Python 在Django中从facebook的服务器端身份验证捕获访问令牌

Python 在Django中从facebook的服务器端身份验证捕获访问令牌,python,django,facebook,facebook-graph-api,oauth,Python,Django,Facebook,Facebook Graph Api,Oauth,我想在下面捕获此URL返回的访问令牌 但如果我使用HttpResponseredirect,它会将我带到一个空白页面,页面上会打印access_令牌和到期秒。我想捕获返回的访问令牌并稍后使用它。下面是我的代码 def fb_return(request): code = request.GET.get('code') fb_id = settings.FB_ID fb_s = settings.FB_SECRET url = 'https://graph.faceboo

我想在下面捕获此URL返回的访问令牌

但如果我使用HttpResponseredirect,它会将我带到一个空白页面,页面上会打印access_令牌和到期秒。我想捕获返回的访问令牌并稍后使用它。下面是我的代码

def fb_return(request):
  code = request.GET.get('code')
  fb_id = settings.FB_ID
  fb_s = settings.FB_SECRET    

  url = 'https://graph.facebook.com/oauth/access_token?client_id=%(id)s&redirect_uri=http://127.0.0.1:8000/facebook/return&client_secret=%(secret)s&code=%(code)s'%{'id':fb_id,'secret':fb_s,'code':code}
  return HttpResponseRedirect(url)
您可以使用来执行请求:

import urllib2
url = 'https://graph.facebook.com/oauth/access_token?client_id=%(id)s&redirect_uri=http://127.0.0.1:8000/facebook/return&client_secret=%(secret)s&code=%(code)s'%{'id':fb_id,'secret':fb_s,'code':code}
response = urllib2.urlopen(url)
html = response.read()
如果响应是json,您可以这样解码:

import simplejson
json = response.read()
dict = simplejson.load(json) 

根据你想做什么,可能有更简单的方式与Facebook互动:

如果你只需要做客户端的事情,你可以使用 如果您正在创建画布应用程序,则可以使用。 如果您使用Facebook登录创建网站,您可以使用 如果希望服务器端与graph api交互,可以使用 您可以使用来执行请求:

import urllib2
url = 'https://graph.facebook.com/oauth/access_token?client_id=%(id)s&redirect_uri=http://127.0.0.1:8000/facebook/return&client_secret=%(secret)s&code=%(code)s'%{'id':fb_id,'secret':fb_s,'code':code}
response = urllib2.urlopen(url)
html = response.read()
如果响应是json,您可以这样解码:

import simplejson
json = response.read()
dict = simplejson.load(json) 

根据你想做什么,可能有更简单的方式与Facebook互动:

如果你只需要做客户端的事情,你可以使用 如果您正在创建画布应用程序,则可以使用。 如果您使用Facebook登录创建网站,您可以使用 如果希望服务器端与graph api交互,可以使用