Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – “在护照facebook登录时不允许需要预检的跨源请求”错误?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个node.js express app,提供RESTful API,我使用护照进行Facebook身份验证.我在服务器端启用了所有CORS配置,并且能够通过jQuery Ajax使用API​​.但对于Facebook身份验证,我收到以下错误

XMLhttprequest cAnnot load http://localhost:3000/auth/facebook. The request was redirected to 'https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=http%…_me%2Cuser_checkins%2Cuser_likes&client_id=12345678&type=web_server',which is disallowed for cross-origin requests that require preflight.

/ auth / facebook端点就是这个.

app.get('/auth/facebook',passport.authenticate('facebook',{
        scope: ['email','user_about_me','user_checkins','user_likes'],failureRedirect: users.authFailCallBACk
    }),users.signin);

所以基本上它被重定向到Facebook的API(302),它不允许CORs.
有什么方法可以解决这个问题吗?或者我需要从服务器端调用Facebook API?

@R_403_1964@

这看起来可能是一个webkit错误

https://bugs.webkit.org/show_bug.cgi?id=112471

您是否尝试在最新的Firefox中重现此行为?

现在(2013-12-05)修复此问题的最佳选择是尽可能使呼叫服务器端.您可能需要服务器端请求以允许IE 8兼容性,因为IE 8不支持大部分CORS规范.我使用同域代理来使IE 8工作.

祝好运.

大佬总结

以上是大佬教程为你收集整理的node.js – “在护照facebook登录时不允许需要预检的跨源请求”错误?全部内容,希望文章能够帮你解决node.js – “在护照facebook登录时不允许需要预检的跨源请求”错误?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。