【问题标题】:feathers-blob error dauria can no read property startsWith羽毛斑点错误 dauria 无法读取属性startsWith
【发布时间】:2017-07-12 09:54:03
【问题描述】:

我刚开始使用 feathers-blob 从 angular4 客户端使用 dropzone 上传文件。 我按照这个例子做了一个明确的上传服务,而不是模糊 app.js。 它编译没有错误,但在执行时我收到以下错误,即使我不使用多部分:

信息:错误:

系统/文件上传 - 方法:创建:无法读取属性“startsWith” 未定义的错误:TypeError:无法读取属性“startsWith” 不明确的 在 Dauria.parseDataURI (/projects/esaas-2/esaas-server-basic/node_modules/feathers-blob/node_modules/dauria/dauria.js:27:17) 在 Object.create (/projects/esaas-2/esaas-server-basic/node_modules/feathers-blob/lib/index.js:87:52) 在 /projects/esaas-2/esaas-server-basic/node_modules/feathers-hooks/lib/hooks.js:101:31 在 /projects/esaas-2/esaas-server-basic/node_modules/feathers-hooks/lib/hooks.js:85:16

我还确保使用与示例中相同版本的 feathers-blob 和 dauria 和 multer,而不是 npm 中的较新版本。结果是一样的。 我究竟做错了什么?任何帮助表示赞赏。谢谢

【问题讨论】:

    标签: feathersjs


    【解决方案1】:

    如果您查看dauria 的代码,您会发现问题出在哪里:

    Dauria.prototype.parseDataURI = function(dataURI){
     if(!( dataURI.startsWith('data:') )) throw new Error(
       this.errors.MISSING_PREFIX
     );
    

    这意味着以某种方式传递给调用者 dauria.parseDataURI(yourDataVariable) 的值 - yourDataVariable 值确实'data:' 开头。

    【讨论】:

      【解决方案2】:

      我在 Node 上进行了测试,在尝试上传图片时遇到了同样的错误。我通过添加字符串“data:image/jpeg;base64”后跟 64 位编码图像来解决它。

      【讨论】:

        猜你喜欢
        • 2018-08-22
        • 1970-01-01
        • 2017-01-24
        • 2021-06-12
        • 2020-06-05
        • 1970-01-01
        • 2017-02-14
        • 2020-12-13
        • 2022-12-04
        相关资源
        最近更新 更多