从POST请求nodejs中提取文件

2024-04-20 08:58:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我是第一次尝试nodejs。我在pythonshell中使用它。我试图用Post请求将文件从一台电脑传送到另一台电脑

在应用程序js(服务器PC)

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

app.post('/mytestapp', function(req, res) {
    console.log(req)
    var command = req.body.command;
    var parameter = req.body.parameter;
    console.log(command + "|" + parameter)
    pyshell.send(command + "|" + parameter);
    res.send("POST Handler for /create")
});

python文件从(客户端PC)发送文件

^{pr2}$

我使用fiddler,请求似乎包含客户端PC上的文件,但我似乎无法在服务器PC上获取文件。如何提取和保存文件?是因为我丢了头吗?我应该用什么?谢谢


Tags: 文件服务器logappparameterusevarbody
1条回答
网友
1楼 · 发布于 2024-04-20 08:58:12

我将根据你问题中的语法猜测并说你使用的是Express。Express不提供现成的文件上传支持。在

您可以使用^{}^{}中间件包来添加multipart上传支持。在

其实很容易做到这一点,这里有一个multer的例子

const express = require('express')
const bodyParser = require('body-parser')
const multer = require('multer')

const server = express()
const port = process.env.PORT || 1337

// Create a multer upload directory called 'tmp' within your __dirname
const upload = multer({dest: 'tmp'})

server.use(bodyParser.json())
server.use(bodyParser.urlencoded({extended: true}))

// For this route, use the upload.array() middleware function to 
// parse the multipart upload and add the files to a req.files array
server.port('/mytestapp', upload.array('files') (req, res) => {
    // req.files will now contain an array of files uploaded 
    console.log(req.files)
})

server.listen(port, () => {
    console.log(`Listening on ${port}`)
})

相关问题 更多 >