在邮递员中重新创建邮寄请求

时间:2019-01-29 03:37:02

标签: express postman body-parser

我有以下javascript代码,可以产生发布请求。

   var postUrl = "http://localhost:3100/radiance";

   xhttp.open("POST", postUrl, true);
   xhttp.setRequestHeader('Content-type', 'application/json');

   let radFile = {"radfile":"long string"}
   let solarJson = {"key1":"value1","key2":"value2"}
   let latitude = 45
   let longitude = 24

   msgJson=JSON.stringify({'radFile':radFile,'speedSolar':solarJson,'latitude':latitude,'longitude':longitude})

   xhttp.send(msgJson);

发布请求与下面的我的快速应用代码完全兼容。

var express        = require('express');

// require our dependencies

var express        = require('express');

var bodyParser     = require('body-parser');
var cors           = require('cors');
var app            = express();
var port           = process.env.PORT || 3100;

var corsOptions = {
  credentials: false
};

// use body parser

app.use(bodyParser.urlencoded({extended: true, limit: 1024 * 1024 * 10000, parameterLimit: 1000000*1000}));

app.use(bodyParser.json({type: 'application/json', extended: false, limit: 1024 * 1024 * 10000, parameterLimit: 1000000*1000}));

// route our app
var router = require('./app/routes');
app.use('/', router);

var server
// start the server
server = app.listen(port, function() {
  console.log('app started ' +port );
});

但是,我正努力在邮递员中复制以上邮寄请求以进行测试(目的)。

我认为,以下发布请求应该可以解决问题,但是当我的应用收到该发布请求时,请求的正文始终为空。为什么?似乎正文解析器并没有完成它的工作。

The body of the post request

The header of the post request

我在邮递员中的发帖请求中做错了什么,如何才能完全复制我的javascript发帖请求?

1 个答案:

答案 0 :(得分:0)

您在此处执行两种不同类型的请求。您的网站代码正在发送一个JSON字符串,其中嵌入了“文件”的内容:

let radFile = {"radfile":"long string"}
let solarJson = {"key1":"value1","key2":"value2"}
let latitude = 45
let longitude = 24
msgJson=JSON.stringify({'radFile':radFile,'speedSolar':solarJson,'latitude':latitude,'longitude':longitude})

给你一个身体

{'radFile': {"radfile": "long string"}, 'speedSolar': {"key1":"value1", "key2":"value2"}, 'latitude': 45, 'longitude': 24}

但是,当您按原样使用Postman时,您要提交2个不同的部分,一个文件(或2个文件)和表单值-您可以使用postman echo网站查看您实际提交的内容,以防万一。将来有疑问: Echo of bad request

如果您确实要复制原始版本,则可以执行以下操作-类型为raw的{​​{1}}正文,并填写详细信息: Echo of valid request

相关问题