Uri*_*Uri 4 python google-app-engine facebook-oauth
我正在尝试使用新的fbsr _ {{appID}} Cookie.
我正在使用以下函数来解析它,但是当我尝试获取access_token之后,我收到'验证验证码错误'消息.这些解析函数有问题吗?如果没有,可能是什么问题?
更多信息:我设法使用oauth链接在没有cookie的情况下登录用户,该链接以代码作为参数重定向回我的网站,因此它不能是app id,app secret或redirect_uri.另一个原因是它们有不同的错误信息.
def base64_url_decode(inp):
padding_factor = (4 - len(inp) % 4) % 4
inp += "="*padding_factor
return base64.b64decode(unicode(inp).translate(dict(zip(map(ord, u'-_'), u'+/'))))
def parse_signed_request(signed_request, secret):
l = signed_request.split('.', 2)
encoded_sig = l[0]
payload = l[1]
sig = base64_url_decode(encoded_sig)
data = json.loads(base64_url_decode(payload))
if data.get('algorithm').upper() != 'HMAC-SHA256':
logging.error('Unknown algorithm')
return None
else:
expected_sig = hmac.new(secret, msg=payload, digestmod=hashlib.sha256).digest()
if sig != expected_sig:
return None
else:
logging.debug('valid signed request received..')
return data
args = {}
args['client_id'] = fbapp_id
args['redirect_uri'] = site_url
args['client_secret'] = fbapp_secret
args['code'] = code
response = urllib.urlopen('https://graph.facebook.com/oauth/access_token?'+urllib.urlencode(args))
# ... here i'm getting the error back from the server: error validating verification code...
Run Code Online (Sandbox Code Playgroud)
Sea*_*n M 10
有一个facebook python SDK的修改版本支持OAuth 2.0并在github上解析fbsr_ cookie:
https://gist.github.com/1190267
您可以查看代码以了解如何解析cookie或让该文件为您完成工作.
| 归档时间: |
|
| 查看次数: |
4580 次 |
| 最近记录: |