【问题标题】:Rename file before upload using remote hooks in loopback component storage在上传之前使用环回组件存储中的远程挂钩重命名文件
【发布时间】:2017-03-14 19:27:20
【问题描述】:

在上传到环回组件存储之前,我在重命名文件时遇到了困难。看起来,环回并没有提供相同的内置选项。对于从角度形式上传,我使用了角度上传器 beforeupload 方法使用以下方法更改文件名:

this.fileExtension = '.' + item.file.name.split('.').pop();
item.file.name = Math.random().toString(36).substring(7) + new Date().getTime() + this.fileExtension;

是否可以在环回组件存储中上传方法的远程钩子之前执行相同的操作?我的意图是对来自移动设备的 api 请求执行相同的文件名更改操作。如果远程挂钩不能做同样的事情,还有其他方法可以达到相同的结果吗?提前致谢!

【问题讨论】:

    标签: node.js file-upload loopbackjs


    【解决方案1】:

    假设您在datasources.json 中定义了storage DS。

    您可以在启动脚本中执行此操作:

    //server/boot/any.js
    module.exports = function(app){
    app.dataSources.storage.connector.getFilename = function (file, req, res) {
      //file.name is original filename uploaded
      var filename = req.query.filename || 'general.ext';
      return filename;
    }
    };
    

    并在上传网址中添加filename

    例如:/containers/my-container/upload?filename=profile.jpg

    【讨论】:

    • 谢谢兄弟!这是一个救生员! :)
    猜你喜欢
    • 1970-01-01
    • 2019-10-22
    • 2016-07-13
    • 1970-01-01
    • 2011-10-23
    • 2018-09-01
    • 2016-09-21
    • 1970-01-01
    • 2012-11-07
    相关资源
    最近更新 更多