Request: TypeError:无法读取未定义的属性“名称”

创建于 2017-05-16  ·  3评论  ·  资料来源: request/request

概括

TypeError:无法读取未定义的属性“名称”

最简单的重现示例

request.post({
    url: '/cdn/upload',
    formData: {
        // Pass a simple key-value pair 
        my_field: 'my_value',
        // Pass data via Buffers 
        my_buffer: new Buffer([1, 2, 3]),
        // Pass data via Streams 
        my_file: fs.createReadStream(__dirname + '/unicycle.jpg'),
        // Pass multiple values /w an Array 
        attachments: [
            fs.createReadStream(__dirname + '/attachment1.jpg'),
            fs.createReadStream(__dirname + '/attachment2.jpg')
        ],
        // Pass optional meta-data with an 'options' object with style: {value: DATA, options: OPTIONS} 
        // Use case: for some types of streams, you'll need to provide "file"-related information manually. 
        // See the `form-data` README for more information about options: https://github.com/form-data/form-data 
        custom_file: {
            value:  fs.createReadStream('/dev/urandom'),
            options: {
            filename: 'topsecret.jpg',
            contentType: 'image/jpeg'
            }
        }
    }
} 

当前行为

TypeError: Cannot read property 'name' of undefined
    at FormData._getContentDisposition (/path-to-project/node_modules/request/node_modules/form-data/lib/form_data.js:217:43)
    at FormData._multiPartHeader (/path-to-project/node_modules/request/node_modules/form-data/lib/form_data.js:171:33)
    at FormData.append (/path-to-project/node_modules/request/node_modules/form-data/lib/form_data.js:64:21)
    at appendFormValue (/path-to-project/node_modules/request/request.js:327:21)
    at Request.init (/path-to-project/node_modules/request/request.js:338:11)
    at new Request (/path-to-project/node_modules/request/request.js:128:8)
    at request (/path-to-project/node_modules/request/index.js:54:10)
    at Function.post (/path-to-project/node_modules/request/index.js:62:12)
    at /path-to-project/publish.js:30:21
    at FSReqWrap.oncomplete (fs.js:123:15)

你的环境

| 软件 | 版本
| ---------------- | --------
| 请求 | 2.81.0、2.78.0
| 节点 | 6.10.1
| npm | 3.10.10
| 操作系统 | 苹果系统

最有用的评论

这也发生在 2.81.0 版中; 是我自己的错,因为我在 formData 中传递了一个未定义的值。 因此,考虑到您编写的代码,问题可能出在文件的路径上,在调用请求之前打印它们并检查它们是否正确。

所有3条评论

这也发生在 2.81.0 版中; 是我自己的错,因为我在 formData 中传递了一个未定义的值。 因此,考虑到您编写的代码,问题可能出在文件的路径上,在调用请求之前打印它们并检查它们是否正确。

删除 "(ex)" 并且 tsc 退出并出现此错误。

尝试 {
} 抓住(前){
控制台.warn(`);
}

扩展@matteodisabatino的评论, formData== undefined _any_属性将导致此问题。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

pixarfilmz112 picture pixarfilmz112  ·  3评论

mlegenhausen picture mlegenhausen  ·  4评论

Aranir picture Aranir  ·  3评论

ghost picture ghost  ·  3评论

keller35 picture keller35  ·  4评论