Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从本地服务器获取不工作的请求_Javascript_Express_Get_Axios - Fatal编程技术网

Javascript 从本地服务器获取不工作的请求

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

我正试图通过axios的GET请求获取json文件,但无法检索信息

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是正确的这不是真的,因为我正在映射到我已经提供的url
http://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));
});