0

我正在使用 React 使用SnoowrapReddit 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());
     });


   },
4

1 回答 1

1

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

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

npm install cors --save 

在你app.get(...)写一个const cors = require('cors')和之前app.use(cors())

我可能错了,但试一试!

于 2017-12-05T20:33:30.343 回答