在进行API调用时,React给出了403禁止错误

时间:2017-12-05 18:40:17

标签: node.js reactjs cors http-status-code-403 httpforbiddenhandler

我正在使用Snoowrap Reddit api包装器来切换图像。当我使用这个函数时,只使用Node.js和app模块它正常工作:

reddit.getSubreddit('pics').getRandomSubmission().then(function(post){
       return(post.url.toString());
     });

这是我的普通NodeJS应用程序的功能,这里的代码100%正常

app.get('/getimage', function(req, res){
  r.getSubreddit(subreddit).getRandomSubmission().then(function(post){
    if(post.url.includes(".jpg") || post.url.includes(".png")){
      res.send(post.url);
      res.end();
    }
    else{
      res.send("No picture extension as .jpg .png")
      console.log("No .jpg Extension");
    }
});
  console.log("Pressed!");
});

这里的代码给了我一个未处理的403拒绝错误我下载了chrome浏览器CORS头扩展并修复了Access-Control-Allow-Origin错误但现在它给了我403错误

getPic: function() {
     reddit.getSubreddit('pics').getRandomSubmission().then(function(post){
       return(post.url.toString());
     });


   },

1 个答案:

答案 0 :(得分:0)

可能导致403 Forbidden响应的常见请求是对网页执行的网页的HTTP GET请求以检索页面以在浏览器窗口中向用户显示。

这可能是因为CORS扩展,如果我是你,我会尝试将我的服务器配置为CORS服务器,而不是使用chrome扩展。 您可以使用此npm

npm install cors --save 

app.get(...)撰写const cors = require('cors')app.use(cors())

之前

我可能错了,但试一试!