Ich muss eine POST-Anfrage in Node.js zu einer API, die zwei Parameter: 1) "Metadaten", eine Zeichenfolge und 2) "Datei", ein Multipart Datei.Node.js POST-Anfrage mit mehrteiligen Datei als Parameter
Das folgende ist ein Teil des Java-Code serverseitige:
public ResponseEntity<CmisDocumentDTO> createDocument(
@ApiParam(name = "file", value = "File to be uploaded.", required = true) @RequestParam("file") MultipartFile file,
@ApiParam(name = "metadata", value = "Metadata of the document", required = false) @RequestParam("metadata") String metadata) {
//Calls the service
}
Die folgende mein node.js Code ist diese Anforderung aufgerufen wird. Die Datei ist auf meinem lokalen Rechner und verwendet die form-data-Modul:
var FormData = require('form-data');
var form = new FormData();
form.append("metadata", "metadata_string_goes_here");
form.append("file", fs.createReadStream(fileName));
var request = https.request({
method: 'post',
host: 'example.org',
path: '/upload',
"rejectUnauthorized": false,
headers: form.getHeaders()
});
form.pipe(request);
request.on('response', function(res) {
console.log(res.statusCode);
});
Wenn ich diesen Code ausführen, ein interner Dienstfehler (Code: 500) zurückgegeben, die der MultipartFile Parameter „file“ sagt, ist nicht vorhanden .
Wie reiche ich erfolgreich eine POST-Anfrage mit einer mehrteiligen Datei als Parameter ein?
Danke!