根据这些文档,我正在尝试“手动建立登录流程”:http://marcmutz.wordpress.com/effective-qt/containers/ 我的想法是我想生成一次授权码,然后将其发送到我的后端,以便它可以在那里生成访问令牌,然后获取用户数据。 上面的文档很好地包含了“调用登录对话框并设置重定向URL”和“交换访问令牌的代码”之类的部分,以及要命中的各个端点,这正是我想要的。因此,我开始在前端的vuejs应用程序中实现对话框调用,以便生成授权代码以将其发送到服务器。
代码如下:
<script>
import axios from "axios";
export default {
methods: {
facebookAuth(){
axios.get('https://www.facebook.com/v4.0/dialog/oauth?client_id=MY_CLIENT_ID&redirect_uri=http://localhost:3000&state="I AM A STRING"', {
headers:{
'Access-Control-Allow-Origin': '*',
}
})
.then(res=>{
console.log(res);
})
}
}
};
</script>
这里的第一个问题是,即使我的anticors chrome扩展程序打开,我也会收到CORS错误。因此,我将其传递给此代理https://cors-anywhere.herokuapp.com/
而且我设法使其正常运行,但是没有打开同意对话框。我刚得到一个带有HTML页面代码作为响应正文的http响应。