Loquicom 4c5df22067 Merge pull request #1 from Loquicom/dependabot/npm_and_yarn/node/yargs-parser-13.1.2 | 2 years ago | |
---|---|---|
node | 2 years ago | |
php | 5 years ago | |
.gitignore | 5 years ago | |
readme.md | 5 years ago |
Spécification d'un serveur d'hebergement de fichier par http. Permet de stocker des fichier et de les rattacher à un utilisateur. L'API mise a disposition du serveur est décrite en dessous. Deux implémentation d'éxemple sont disponible, en nodejs et en php.
Lors de l'utilisation de l'api si la requete est invalide le retour est de la forme suivante
{
"success": false,
"code": "number",
"message": "string"
}
Les codes d'erreurs sont les suivants :
GET /authentication
Indique si le serveur necessite un mot de passe pour accèder aux fichiers
Reponse :
{
"success": true,
"authentication": "boolean"
}
POST /register
Inscrit un utilisateur sur le serveur
Le champ user correspond au nom de l'utilisateur
Requete :
{
"user": "string",
"password": "string"
}
Reponse :
{
"success": true
}
POST /login
Connexion de l'utilisateur et retourne un jeton de connexion. Le jeton de connexion est valide 12h00 après son émission.
Le champ user correspond au nom de l'utilisateur
Requete :
{
"user": "string",
"password": "string"
}
Reponse :
{
"success": true,
"token": "string"
}
GET /token
Permet de tester la validitée d'un jeton émit lors de la connexion
Le champ user correspond au nom de l'utilisateur
Requete :
{
"user": "string",
"token": "string"
}
Reponse :
{
"success": true,
"valid": "boolean"
}
GET /list
Liste les fichiers disponible pour l'utilisateur. La valeur token n'est necessaire que si l'authentification est activée.
Le champ user correspond au nom de l'utilisateur
Requete :
{
"user": "string",
"token": "string"
}
Reponse :
{
"success": true,
"total": "number",
"list": ["fileId1", "fileId2", "..."]
}
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.
Le champ user correspond au nom de l'utilisateur
Requete :
{
"user": "string",
"token": "string"
}
Reponse :
{
"success": true,
"fileid": "string",
"filename": "string",
"data": "string"
}
POST /save
Sauvegarde un nouveau fichier. La valeur token n'est necessaire que si l'authentification est activée.
Le champ user correspond au nom de l'utilisateur et le champ data au contenue du fichier
Requete :
{
"user": "string",
"token": "string",
"file": "string",
"data": "string"
}
Reponse :
{
"success": true,
"fileid": "string",
"filename": "string"
}
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.
Le champ user correspond au nom de l'utilisateur et le champ data au contenue du fichier
Requete :
{
"user": "string",
"token": "string",
"data": "string"
}
Reponse :
{
"success": true,
"fileid": "string"
}
PUT /rename/{fileId}
Renomme un fichier existant
Le champ user correspond au nom de l'utilisateur et le champ name au nouveau nom
Requete :
{
"user": "string",
"token": "string",
"name": "string"
}
Reponse :
{
"success": true,
"fileId": "string",
"filename": "string"
}
DELETE /{fileId}
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
Requete :
{
"user": "string",
"token": "string"
}
Reponse :
{
"success": true
}