Request: TypeError: no se puede leer la propiedad 'nombre' de indefinido

Creado en 16 may. 2017  ·  3Comentarios  ·  Fuente: request/request

Resumen

TypeError: no se puede leer la propiedad 'nombre' de indefinido

Ejemplo más simple de reproducir

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'
            }
        }
    }
} 

Comportamiento actual

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)

tu entorno

| software | versión
| ---------------- | -------
| solicitud | 2.81.0, 2.78.0
| nodo | 6.10.1
| npm | 3.10.10
| Sistema Operativo | Mac OS

Comentario más útil

Esto también me pasó con la versión 2.81.0; fue mi culpa porque estaba pasando un valor indefinido en formData. Entonces, considerando el código que ha escrito, el problema puede estar en la ruta de los archivos, imprímalos antes de llamar a la solicitud y verifique si son correctos.

Todos 3 comentarios

Esto también me pasó con la versión 2.81.0; fue mi culpa porque estaba pasando un valor indefinido en formData. Entonces, considerando el código que ha escrito, el problema puede estar en la ruta de los archivos, imprímalos antes de llamar a la solicitud y verifique si son correctos.

Elimine el "(ex)" y tsc sale con este error.

tratar {
} atrapar (ej.) {
consola.advertir(``);
}

Ampliando comentario @matteodisabatino 's, _cualquier_ propiedad que es == undefined dentro formData causará este problema.

¿Fue útil esta página
0 / 5 - 0 calificaciones