簡體   English   中英

在POST中將文件和數據從Python上傳到Node.js

[英]Uploading file and data from Python to Node.js in POST

如何在POST中將文件發送到Node.js和參數數據。 我很高興使用任何框架。 我已經嘗試過了,但我很高興能改變。

在我的嘗試中,文件發送,但是req.body為空

要上傳的Python代碼:

   with open('fileName.txt', 'rb') as f: 
        payLoad = dict()
        payLoad["data"] = "my_data"
        r = requests.post('http://xx.xx.xx.xx:8080/sendFile',json = payLoad, files={'fileName.txt': f})

服務器端Node.js:

var express = require('express');
var formidable = require('formidable');
var app = express();
var bodyParser = require('body-parser');

app.use( bodyParser.json() ); 
app.use(bodyParser.urlencoded({ extended: false })); 

app.post('/sendFile', function (req, res){
    console.log(req.body )
    // req.body is empty

我不知道如何使用python正確發送文件,但是要使用node.js接收文件,可以使用express-fileupload

var fileUpload = require('express-fileupload');
app.use(fileUpload());

app.post('/upload', function(req, res) {
  if (!req.files)
    return res.status(400).send('No files were uploaded.');

  // The name of the input field (i.e. "sampleFile") is used to retrieve the uploaded file 
  let sampleFile = req.files.sampleFile;

  // Use the mv() method to place the file somewhere on your server 
  sampleFile.mv('/somewhere/on/your/server/filename.jpg', function(err) {
    if (err)
      return res.status(500).send(err);

    res.send('File uploaded!');
  });
});

https://www.npmjs.com/package/express-fileupload

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM