javascript - TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object - Stack Overflow

1) I am trying to decode a GET request something like this abb197313b83ad9f16a946c8be35a0f8 but I am ge

1) I am trying to decode a GET request something like this abb197313b83ad9f16a946c8be35a0f8 but I am getting this error.

TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.

let decoder;

    const parseMetadataString = (metadata_string) => {
    const kv_pair_list = metadata_string.split(',');

    return kv_pair_list.reduce((metadata, kv_pair) => {
        const [key, base64_value] = kv_pair.split(' ');

        metadata[key] = {
            encoded: base64_value,
            decoded: Buffer.from(base64_value, 'base64').toString('ascii'),
        };
        return decoder = metadata;
    }, {});
}

  app.get('/upload/files/:fileid', (req, res) => {
   const { fileid } = req.params;
   parseMetadataString(fileid);
   res.sendFile(__dirname + /files/ + decoder);
  });

2) If I do it this way I get this error:

TypeError: Cannot read property 'name' of undefined

But it does res.sendFile with the correct name.

let decoder;

  const parseMetadataString = (metadata_string) => {
    const kv_pair_list = metadata_string.split(',');

    return kv_pair_list.reduce((metadata, kv_pair) => {
        const [key, base64_value] = kv_pair.split(' ');

        metadata[key] = {
            encoded: base64_value,
            decoded: Buffer.from(base64_value, 'base64').toString('ascii'),
        };
        return decoder = metadata;
    }, {});
}

  app.get('/upload/files/:fileid', (req, res) => {
   const { fileid } = req.params;
   res.sendFile(__dirname + /files/ + decoder.name.decoded);
});

 server.on(EVENTS.EVENT_UPLOAD_COMPLETE, (event) => {
   parseMetadataString(event.file.upload_metadata);
 });

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745227406a4617526.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信