我想发一个网址请求,在浏览器中尝试后,结果会是JSON
。
我希望将整个JSON响应放在var或const中,以便以后进一步处理。
到目前为止我尝试了什么:
app.use(express.bodyParser());
app.post(MY_URL, function(request, response){
console.log(request.body);
console.log(request.body;
});
然后:
app.use(bodyParser.urlencoded({
extended: true
}));
app.post(MY_URL, function (req, res) {
console.log(req.body)
});
这两项都没有成功,并且在node.js
中成为初学者并没有帮助。
修改:为了澄清我的问题:
my_url = https://only_an_example
在浏览器中输入的URL将在该页面中给出一个Json,如下所示:
{
"query": "testing",
"topScoringIntent": {
"intent": "Calendar.Add",
"score": 0.987683
},
"intents": [
{
"intent": "Calendar.Add",
"score": 0.987683
},
{
"intent": "None",
"score": 0.0250480156
}}
我想要的是获取Json响应并使用node.js打印它。
答案 0 :(得分:0)
如果您尝试获取请求的正文,只需访问:
req.body;
如果要将JSON对象作为响应发送,可以执行以下操作:
var objectToResponde = {"key1": "value1", "key2": "value"};
res.send(objectToResponde);
答案 1 :(得分:0)
在进一步了解OP的问题后(通过下面的评论),您可以将要发送回客户端的对象转换为JSON,如下所示:
app.post('some/url', (req, res) => {
const myObject = {a: 1, b:2};
res.json(myObject);
});
结果是JSON响应,并设置了相应的响应标头。
答案 2 :(得分:0)
试试这个:
app.use(bodyParser.urlencoded({
extended: true
}));
app.post(MY_URL, function (req, res) {
res.status(200).json(<your object>);
});