Browse Source

Modification du type des requetes HTTP + ajout rename dans router

Loquicom 5 years ago
parent
commit
16a3d31709
2 changed files with 69 additions and 50 deletions
  1. 63 44
      node/src/router.js
  2. 6 6
      readme.md

+ 63 - 44
node/src/router.js

@@ -102,46 +102,7 @@ const router = class Router {
     /* --- Definitions des routes --- */
     /* --- Definitions des routes --- */
 
 
     newFile(user, file, data, res) {
     newFile(user, file, data, res) {
-        let promise, filename;
-        // Si on sauvegarde les données dans des fichiers, generation du chemin
-        if (global.storage === 'file') {
-            let hash = Date.now() + '-' + req.body.user + '-' + req.params.file;
-            hash = crypto.createHash('md5').update(hash).digest('base64');
-            hash = hash.replace(/=/g, '').replace(/\//g, '');
-            filename = './data/' + hash + '.fdata';
-            promise = db.addFile(user, file, filename);
-        }
-        // Sinon om met directement en base
-        else {
-            promise = db.addFile(user, file, data);
-        }
-        if (promise === false) {
-            res.json(error(ERR_REQUEST));
-            return;
-        }
-        promise.then((fileId) => {
-            if (fileId === false) {
-                res.json(ERR_SERV);
-            } else {
-                // Si en mode fichier stockage dans un fichier
-                if ((global.storage === 'file')) {
-                    fs.writeFile(filename, data, (err) => {
-                        if (err) {
-                            if (global.verbose) {
-                                console.error(err);
-                            }
-                            res.json(error(ERR_SERV));
-                        } else {
-                            res.json(success({fileId: fileId, fileName: file}));
-                        }
-                    });
-                }
-                // Le fichier est directement sauvegarder en base
-                else {
-                    res.json(success({fileId: fileId, fileName: file}));
-                }
-            }
-        });
+
     }
     }
 
 
     saveFile() {
     saveFile() {
@@ -190,7 +151,7 @@ const router = class Router {
             });
             });
         }]);
         }]);
 
 
-        this.app.post('/token', [this.verbose, (req, res) => {
+        this.app.get('/token', [this.verbose, (req, res) => {
             if (req.body.user === undefined || req.body.token === undefined) {
             if (req.body.user === undefined || req.body.token === undefined) {
                 res.json(error(ERR_REQUEST));
                 res.json(error(ERR_REQUEST));
                 return;
                 return;
@@ -198,7 +159,7 @@ const router = class Router {
             res.json(success({valid: auth.verify(req.body.user, req.body.token)}));
             res.json(success({valid: auth.verify(req.body.user, req.body.token)}));
         }]);
         }]);
 
 
-        this.app.post('/list', [this.verbose, this.verifyAuth, (req, res) => {
+        this.app.get('/list', [this.verbose, this.verifyAuth, (req, res) => {
             const promise = db.listFile(req.body.user);
             const promise = db.listFile(req.body.user);
             if (promise === false) {
             if (promise === false) {
                 res.json(error(ERR_REQUEST));
                 res.json(error(ERR_REQUEST));
@@ -216,7 +177,7 @@ const router = class Router {
             });
             });
         }]);
         }]);
 
 
-        this.app.post('/get/:file', [this.verbose, this.verifyAuth, (req, res) => {
+        this.app.get('/:file', [this.verbose, this.verifyAuth, (req, res) => {
             const promise = db.getFile(req.body.user, req.params.file);
             const promise = db.getFile(req.body.user, req.params.file);
             if (promise === false) {
             if (promise === false) {
                 res.json(error(ERR_REQUEST));
                 res.json(error(ERR_REQUEST));
@@ -253,7 +214,57 @@ const router = class Router {
             });
             });
         }]);
         }]);
 
 
-        this.app.post('/save/:file?', [this.verbose, this.verifyAuth, (req, res) => {
+        this.app.post('/save', [this.verbose, this.verifyAuth, (req, res) => {
+            const user = req.body.user;
+            const file = req.body.file;
+            const data = req.body.data;
+            let promise, filename;
+            // Si on sauvegarde les données dans des fichiers, generation du chemin
+            if (global.storage === 'file') {
+                let hash = Date.now() + '-' + req.body.user + '-' + req.params.file;
+                hash = crypto.createHash('md5').update(hash).digest('base64');
+                hash = hash.replace(/=/g, '').replace(/\//g, '');
+                filename = './data/' + hash + '.fdata';
+                promise = db.addFile(user, file, filename);
+            }
+            // Sinon om met directement en base
+            else {
+                promise = db.addFile(user, file, data);
+            }
+            if (promise === false) {
+                res.json(error(ERR_REQUEST));
+                return;
+            }
+            promise.then((fileId) => {
+                if (fileId === false) {
+                    res.json(ERR_SERV);
+                } else {
+                    // Si en mode fichier stockage dans un fichier
+                    if ((global.storage === 'file')) {
+                        fs.writeFile(filename, data, (err) => {
+                            if (err) {
+                                if (global.verbose) {
+                                    console.error(err);
+                                }
+                                res.json(error(ERR_SERV));
+                            } else {
+                                res.json(success({fileId: fileId, fileName: file}));
+                            }
+                        });
+                    }
+                    // Le fichier est directement sauvegarder en base
+                    else {
+                        res.json(success({fileId: fileId, fileName: file}));
+                    }
+                }
+            });
+        }]);
+
+        this.app.put('/save/:file', [this.verbose, this.verifyAuth, (req, res) => {
+
+        }]);
+
+        /*this.app.post('/save/:file?', [this.verbose, this.verifyAuth, (req, res) => {
             if (req.params.file === undefined) {
             if (req.params.file === undefined) {
                 if (req.body.file === undefined || req.body.data === undefined) {
                 if (req.body.file === undefined || req.body.data === undefined) {
                     res.json(error(ERR_REQUEST));
                     res.json(error(ERR_REQUEST));
@@ -267,6 +278,14 @@ const router = class Router {
                     this.saveFile(req.body.user, req.body.data, res);
                     this.saveFile(req.body.user, req.body.data, res);
                 }
                 }
             }
             }
+        }]);*/
+
+        this.app.post('/rename/:file', [this.verbose, this.verifyAuth, (req, res) => {
+
+        }]);
+
+        this.app.delete('/:file', [this.verbose, this.verifyAuth, (req, res) => {
+
         }]);
         }]);
 
 
     }
     }

+ 6 - 6
readme.md

@@ -87,7 +87,7 @@ Reponse :
 
 
 ------
 ------
 
 
-`POST /token`
+`GET /token`
 
 
 Permet de tester la validitée d'un jeton émit lors de la connexion
 Permet de tester la validitée d'un jeton émit lors de la connexion
 
 
@@ -111,7 +111,7 @@ Reponse :
 
 
 ------
 ------
 
 
-`POST /list`
+`GET /list`
 
 
 Liste les fichiers disponible pour l'utilisateur. La valeur token n'est necessaire que si l'authentification est activée.
 Liste les fichiers disponible pour l'utilisateur. La valeur token n'est necessaire que si l'authentification est activée.
 
 
@@ -136,7 +136,7 @@ Reponse :
 
 
 ------
 ------
 
 
-`POST /get/{fileId}`
+`GET /{fileId}`
 
 
 Récupère un fichier. Remplacer {file} par l'id du fichier à récupèrer. La valeur token n'est necessaire que si l'authentification est activée.
 Récupère un fichier. Remplacer {file} par l'id du fichier à récupèrer. La valeur token n'est necessaire que si l'authentification est activée.
 
 
@@ -189,7 +189,7 @@ Reponse :
 
 
 ------
 ------
 
 
-`POST /save/{fileId}`
+`PUT /save/{fileId}`
 
 
 Sauvegarde un fichier. Remplacer {fileId} par l'id du fichier à sauvegarder. La valeur token n'est necessaire que si l'authentification est activée.
 Sauvegarde un fichier. Remplacer {fileId} par l'id du fichier à sauvegarder. La valeur token n'est necessaire que si l'authentification est activée.
 
 
@@ -241,9 +241,9 @@ Reponse :
 
 
 ------
 ------
 
 
-`DELETE  /delete/{file}`
+`DELETE  /{fileId}`
 
 
-Supprime un fichier. Remplacer {file} par l'id du fichier à récupèrer. La valeur token n'est necessaire que si l'authentification est activée.
+Supprime un fichier. Remplacer {fileId} par l'id du fichier à récupèrer. La valeur token n'est necessaire que si l'authentification est activée.
 
 
 Le champ user correspond au nom de l'utilisateur
 Le champ user correspond au nom de l'utilisateur