我正在尝试按照此处提到的步骤http://developers.facebook.com/docs/authentication/devices/ 从用户那里获取身份验证。我执行以下 python 脚本。
#!/usr/bin/python3.2
import os
import urllib
import json
data = urllib.parse.urlencode({'type': 'device_code','client_id': 439862919363245,'scope':})
data = data.encode('utf-8')
request = urllib.request.Request("https://graph.facebook.com/oauth/device")
request.add_header("Content-Type","application/json;charset=utf-8")
try:
response = urllib.request.urlopen(request,data)
httpcode = response.getcode()
responseData = response.read()
dataMap = json.loads(responseData.decode())
except Exception as e:
print ("Exception : "+str(e))
if httpcode != 200:
print('Error : code :'+httpcode+', data : '+data)
sys.exit(1)
print("Success : ")
print(dataMap)
我得到以下输出:
Exception : HTTP Error 400: Bad Request
Success :
{'username': 'hamepal', 'first_name': 'Rakesh', 'last_name': 'Kumar', 'name': 'Rakesh Kumar', 'locale': 'en_GB', 'gender': 'male', 'id': '713371871'}
The output is really strange. According to document I should have received the data similar to as following.
{"code":"64a99b030985f39a93b2608a4713e758","user_code":"E5MV1N","verification_uri":"http://www.facebook.com/device","expires_in":1800,"interval":5}
我在这里错过了什么吗?我也尝试复制此处给出的请求 http://oauth-device-demo.appspot.com/但我无法获得任何成功。
我试图在网上搜索,但无法得到任何工作。请帮忙。任何形式的帮助都非常感谢这里。
编辑: 现在当我使用与示例中相同的 client_id 时,它可以正常工作。根据页面上的通知,似乎他们仍然不支持任何其他设备。而且我必须为我的应用程序寻找身份验证流程。