TypeError : impossible de lire la propriété 'nom' d'undefined
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)
| logiciel | version
| ---------------- | -------
| demande | 2,81,0, 2,78,0
| nœud | 6.10.1
| npm | 3.10.10
| Système d'exploitation | Mac OS
Cela m'est arrivé aussi avec la version 2.81.0 ; était de ma faute car je passais une valeur indéfinie dans le formData. Ainsi, compte tenu du code que vous avez écrit, le problème peut résider sur le chemin des fichiers, imprimez-les avant d'appeler la requête et vérifiez s'ils sont corrects.
Supprimez le "(ex)" et tsc se termine avec cette erreur.
essayer {
} attraper (ex) {
console.warn(``);
}
L' expansion sur le commentaire de l » @matteodisabatino, _any_ propriété qui est == undefined
à l' intérieur formData
causera cette question.
Commentaire le plus utile
Cela m'est arrivé aussi avec la version 2.81.0 ; était de ma faute car je passais une valeur indéfinie dans le formData. Ainsi, compte tenu du code que vous avez écrit, le problème peut résider sur le chemin des fichiers, imprimez-les avant d'appeler la requête et vérifiez s'ils sont corrects.