Request: TypeError: μ •μ˜λ˜μ§€ μ•Šμ€ 'name' 속성을 읽을 수 μ—†μŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2017λ…„ 05μ›” 16일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: request/request

μš”μ•½

TypeError: μ •μ˜λ˜μ§€ μ•Šμ€ 'name' 속성을 읽을 수 μ—†μŠ΅λ‹ˆλ‹€.

μž¬ν˜„ν•˜κΈ° μœ„ν•œ κ°€μž₯ κ°„λ‹¨ν•œ 예

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
| 운영 체제 | λ§₯ OS

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이것은 버전 2.81.0μ—μ„œλ„ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. formData에 μ •μ˜λ˜μ§€ μ•Šμ€ 값을 μ „λ‹¬ν–ˆκΈ° λ•Œλ¬Έμ— λ‚΄ 잘λͺ»μ΄μ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ μž‘μ„±ν•œ μ½”λ“œλ₯Ό κ³ λ €ν•  λ•Œ λ¬Έμ œκ°€ 파일 κ²½λ‘œμ— μžˆμ„ 수 μžˆμœΌλ―€λ‘œ μš”μ²­μ„ ν˜ΈμΆœν•˜κΈ° 전에 νŒŒμΌμ„ μΈμ‡„ν•˜κ³  파일이 μ˜¬λ°”λ₯Έμ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€.

λͺ¨λ“  3 λŒ“κΈ€

이것은 버전 2.81.0μ—μ„œλ„ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. formData에 μ •μ˜λ˜μ§€ μ•Šμ€ 값을 μ „λ‹¬ν–ˆκΈ° λ•Œλ¬Έμ— λ‚΄ 잘λͺ»μ΄μ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ μž‘μ„±ν•œ μ½”λ“œλ₯Ό κ³ λ €ν•  λ•Œ λ¬Έμ œκ°€ 파일 κ²½λ‘œμ— μžˆμ„ 수 μžˆμœΌλ―€λ‘œ μš”μ²­μ„ ν˜ΈμΆœν•˜κΈ° 전에 νŒŒμΌμ„ μΈμ‡„ν•˜κ³  파일이 μ˜¬λ°”λ₯Έμ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€.

"(ex)"λ₯Ό μ œκ±°ν•˜λ©΄ tscκ°€ 이 였λ₯˜μ™€ ν•¨κ»˜ μ’…λ£Œλ©λ‹ˆλ‹€.

λ…Έλ ₯ν•˜λ‹€ {
} 작기(μ˜ˆμ‹œ) {
console.warn(``);
}

@matteodisabatino 의 μ„€λͺ…을 ν™•μž₯ν•˜λ©΄ == undefined μ•ˆμ— formData == undefined 인 _any_ 속성이 이 문제λ₯Ό μΌμœΌν‚¬ κ²ƒμž…λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰