thinkraz-api-sdk
Version:
橡芮科技API开发包
62 lines (58 loc) • 1.84 kB
JavaScript
const Promise = require('bluebird');
const baseClass = require('../lib/baseClass');
module.exports = class Files extends baseClass {
/**
* @description 上传文件
* @param {string} filename
* @param {buffer} bufferData
*/
uploadFile(filename, bufferData) {
return new Promise((resolve, reject) => {
this.request().post(`${this.getPath()}/${filename}`, bufferData, false).then(fileObj => {
resolve(fileObj);
}).catch(err => {
reject(err);
});
});
}
/**
* @description 获取文件对象
* @param {string} filename
*/
getFile(filename) {
return new Promise((resolve, reject) => {
this.request().get(`${this.getPath()}/${filename}`).then(fileObj => {
resolve(fileObj);
}).catch(err => {
reject(err);
});
});
}
/**
* @description 删除文件
* @param {string} filename
*/
deleteFile(filename) {
return new Promise((resolve, reject) => {
this.request().del(`${this.getPath()}/${filename}`).then(deletedFileObj => {
resolve(deletedFileObj);
}).catch(err => {
reject(err);
});
});
}
/**
* @description 获取文件列表
* @param {{where:{object},sort:{object},offset:{int},limit:{int}}} options
*/
fileList(options) {
return new Promise((resolve, reject) => {
if (!options) options = {};
this.request().get(this.getPath(), options).then(fileList => {
resolve(fileList);
}).catch(err => {
reject(err);
});
});
}
};