Buffer类型的post数据上传

需求:
利用Nodejs将buffer(读取文件返回的数据)类型数据通过http.request采用post类型发送到后端,
后端后端为Django框架。

问题:

  如何在request中获取post传过来的chunk块(即通过Node中的request.write(buffer),然后post过来的数据)
  
 
  
Nodejs端代码:
function  doapost(data,i) {
    return new Promise(function (resolve,reject) {
        let contents = data
        let options = {
            host: "localhost",
            path: "/nodepost/",
            port: 8000,
            method: 'POST'
        };
        let req = http.request(options, function (res) {
            console.log("第"+i+"份请求返回数据")
            res.on("data", function (chunk) {
                console.log(chunk);
            });
            res.on("end", function (d) {
                resolve("end");
            });
            res.on("error", function (e) {
                reject(e);
            })
        });
        console.log(contents)
        req.write(contents);
        req.end();
        contents = null;
    })
}
Django中的代码:
def nodepost(request):
    return HttpResponse(request.read())

运行结果:

clipboard.png
可以看到request.read并没有数据返回,改用Django的request.body也没有数据返回,请问各位码友如何在后端获取buffer数据尼?

阅读 3.6k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题