在 postman 中重新创建一个 post 请求

Recreate a post request in postman

我有以下 javascript 代码,用于生成 post 请求。

   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);

post 请求在我下面的 express 应用程序代码下工作得非常好。

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 );
});

但是我正在努力在 post man 中复制上面的 post 请求以进行测试(目的)。

我相信下面的 post 请求应该可以解决问题,但是当我的应用收到这个 post 请求时,请求的正文总是空的。为什么?正文解析器似乎没有完成它的工作。

我在 postman 中的 post 请求中做错了什么,我怎样才能准确地复制我的 javascript post 请求?

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

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 站点查看您实际提交的内容,在如果您将来有疑问:

如果你真的想复制你的原始版本,你可以这样做 - raw 类型 json 的正文,并填写详细信息: