在 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
的正文,并填写详细信息:
我有以下 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
的正文,并填写详细信息: