我正在尝试为我的网络应用程序添加 Facebook 登录功能。正在用 express js、mongodb 和 angular 2 开发。
应用程序的客户端部分是通过 angular-cli(在端口 4200 上运行)生成的。要将其连接到 express 应用程序(在端口 4300 上运行),我使用了 angular-cli 本身提供的代理配置。
我已经搜索过网络,但没有什么对我有用。请帮帮我。
这是我在点击 facebook 登录按钮时遇到的错误
XMLHttpRequest cannot load https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=http%…alhost%3A4200%2Fapi%2Fuser%2Ffacebook%2Fcallback&client_id=404659989876073. Redirect from 'https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=http%…alhost%3A4200%2Fapi%2Fuser%2Ffacebook%2Fcallback&client_id=404659989876073' to 'https://www.facebook.com/login.php?skip_api_login=1&api_key=404659989876073…_&display=page&locale=en_GB&logger_id=9f59d18b-00cb-48a9-a544-7e49a66acfe4' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)
我可以理解这是 CORS 问题,我搜索了很多地方,但所有在线可用的解决方案都不适合我。比如允许跨域快递,使用第三方库等。
这是我的 app.ts
XMLHttpRequest cannot load https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=http%…alhost%3A4200%2Fapi%2Fuser%2Ffacebook%2Fcallback&client_id=404659989876073. Redirect from 'https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=http%…alhost%3A4200%2Fapi%2Fuser%2Ffacebook%2Fcallback&client_id=404659989876073' to 'https://www.facebook.com/login.php?skip_api_login=1&api_key=404659989876073…_&display=page&locale=en_GB&logger_id=9f59d18b-00cb-48a9-a544-7e49a66acfe4' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on …Run Code Online (Sandbox Code Playgroud)