Javascript 从本地服务器获取不工作的请求
我正试图通过axios的GET请求获取json文件,但无法检索信息 在Javascript 从本地服务器获取不工作的请求,javascript,express,get,axios,Javascript,Express,Get,Axios,我正试图通过axios的GET请求获取json文件,但无法检索信息 在index.js(检索信息)中: 后端端点getpost.js(发送信息): 我还尝试了returnposts.find({color:“Green”})在路由器.route('/').get…函数中, 但是,返回的值与承诺中的值(我需要的值)不同。我检查了信息是否确实是通过console.log(res)发送的,但是前端没有接收到它——当我在那里记录结果时,它是空的。您需要将到getpost的路由映射为: router.ro
index.js
(检索信息)中:
后端端点getpost.js
(发送信息):
我还尝试了returnposts.find({color:“Green”})代码>在路由器.route('/').get…
函数中,
但是,返回的值与承诺中的值(我需要的值)不同。我检查了信息是否确实是通过console.log(res)
发送的,但是前端没有接收到它——当我在那里记录结果时,它是空的。您需要将到getpost的路由映射为:
router.route('/getpost')
因此,您的getpost将是:
var router = require('express').Router();
var Posts = require('../models/post-model.js');
router.route('/getpost').get(() => {
Posts.find({color: "Green"})
.then((res) => {
res.send({status:200,message:res});
});
});
module.exports = router;
您没有对路由响应执行任何操作。也许像
router.route('/').get((req, res1) => {
Posts.find({color: "Green"})
.then((res) => {
res1.end(res);
});
});
(假设
res
是明文数据,如果它是JavaScript对象,您将执行res1.json(res)
或res1.jsonp(res)
)显然,我没有正确地传递结果
getpost.js
中的路由器应该是:
router.route('/').get((req, res) => {
Posts.find({color: "Green"})
.then((posts) => res.json(posts));
});
当您执行get请求时,您是否可以看到结果是否来自postman,如果您可以显示index.js以及如何映射RouteGrat便笺,那就更好了!我使用失眠(类似于postman)测试GET请求,它不会返回(不会停止加载)好吧,我可能认为您映射的路线不正确…post your index.js除了我包含的内容外,index.js
中没有与GET请求相关的内容,url是正确的这不是真的,因为我正在映射到我已经提供的urlhttp://localhost:1000/getpost/
所以包含/getpost
是错误的——我确实在今年收到了一个错误way@David,您在index.js或app.js中有用于api的映射,只需显示GetPost中没有问题的部分,我通过修改我的回答中的代码解决了这个问题。我做了console.log(res)
,我得到了json,当我在index.js
中通过接收端进行处理时,我什么也没有得到。你的回答似乎是对的,我尝试了类似的方法,效果很好。非常感谢。
router.route('/').get((req, res1) => {
Posts.find({color: "Green"})
.then((res) => {
res1.end(res);
});
});
router.route('/').get((req, res) => {
Posts.find({color: "Green"})
.then((posts) => res.json(posts));
});