![](/img/trans.png)
[英]Error 901: Invalid redirect_uri: Given URL is not permitted by the Application configuration
[英]Request for fb token returns Error 400 in django only in production: “Invalid redirect_uri: The specified URL is not allowed…”
我正在使用本教程尝试使python,django中的fb api的访问令牌长寿: http : //developers.facebook.com/docs/howtos/login/server-side-login/
对于我来说,这在开发服务器上本地工作,但在生产环境中不行!
我在第一步中得到了一个代码 ,但是在下一步中遇到了问题: 步骤6.将代码交换为访问令牌
这是获取访问令牌的代码:
params = {
'client_id': app_id,
'client_secret': app_secret,
'code': code,
'redirect_uri': "http://" + Site.objects.get_current().domain + reverse("login_fb")
}
url = "https://graph.facebook.com/oauth/access_token?" + urllib.urlencode(params)
headers = {'User-Agent': 'Mozilla/5.0'}
request = urllib2.Request(url, headers=headers, data=urllib.urlencode(params))
response = urllib2.urlopen(request)
当我调出请求时,出现错误: HTTP错误400:错误的请求它正在开发服务器上运行。 当我使用return redirect(url)
而不是urllib2.urlopen(url)
我被重定向到有效的访问令牌。 为什么urlopen不起作用?
更新这是fb api的响应:
Invalid redirect_uri: The specified URL is not allowed by the configuration of the application
您可能需要在Facebook Apps面板中将“ localhost”添加为您的“ App Domains”之一
localhost
(也请注意其中的帮助文本,其内容为:“在域和子域上启用身份验证”)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.