Просмотр исходного кода

Modification du type des requetes HTTP + ajout rename dans router

Loquicom 6 лет назад
Родитель
Сommit
16a3d31709
2 измененных файлов с 69 добавлено и 50 удалено
  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