我收到以下错误
{
“错误”:{ “message”:“无效的redirect_uri:应用程序配置不允许给定URL”, “type”:“OAuthException”, “代码”:191 } }
我在facebook中创建了我的应用程序并设置了这样的网址...
当我点击facebook的图标登录并获取以下网址
https://graph.facebook.com/oauth/authorize?scope=email&client_id= {的myKey}&安培; REDIRECT_URI = HTTP%3A%2F%2Flocalhost%3A9000%2Fauth%2Fauthenticate%2Ffacebook&安培; RESPONSE_TYPE =代码&安培;状态= 7d2d6abf-b7d2-4b5c-b956-7d7487d89cbd
我正在关注示例https://github.com/jaliss/securesocial/tree/master/samples/scala
我希望文档即将推出。 :)
所以,我真的不知道我应该从哪里开始寻找...任何想法?
答案 0 :(得分:0)
嗯...... Facebook服务器需要知道服务器的public ip
,以便在身份验证完成后将用户发送回您的服务器。
在我们的计算机上,当我们说localhost
时,它被配置为转换为loopback ip address
,即127.0.0.1
计算机理解为My own ip address
(无论您的IP地址是什么)是的,您的计算机会将localhost
和127.0.0.1
映射到其中。)。
现在,类似于Facebook的服务器localhost
转换为itslef。 Facebook上的人明智地知道这不是你想要的,而且可能是错误地做到了这一点。所以他们告诉你,你提供了一个无效的重定向网址。
您需要确保您的服务器有public IP
,然后将您的公共IP提供给facebook api。或者,您可以购买myawesoemfacebookfacingnewsite.com
等域名,并将其映射到某个public IP
提供商的服务器的DNS
,然后您可以将您的域名提供给Facebook API。< / p>
另外......即使对于您自己的计算机,也不能只有localhost.com
,而只能是localhost
。如果您在virtual host
中将localhost.com
映射到Apache conf
,则该"just" for you, not for the outside world
将有效virtual host
。另外,请不要这样做...... localhost.com
名为{{1}}的{{1}}有点令人尴尬,不推荐。