我注意到 Facebook 似乎支持使用令牌/PIN 码而不是用户/登录来在电视或控制台等设备上使用设备登录:
https://www.facebook.com/device
在开发页面的搜索中,我可以看到一篇与此相关的文章,但至少在德国有一篇文章给出了 404。
任何人都有这方面的更多信息?
谢谢
我注意到 Facebook 似乎支持使用令牌/PIN 码而不是用户/登录来在电视或控制台等设备上使用设备登录:
https://www.facebook.com/device
在开发页面的搜索中,我可以看到一篇与此相关的文章,但至少在德国有一篇文章给出了 404。
任何人都有这方面的更多信息?
谢谢
我也一直在为此进行研究,但不幸的是,facebook 设备身份验证仍处于试验阶段,他们没有提供新的密钥(合作伙伴)来使用设备身份验证。
您可以在此处找到工作示例:http: //oauth-device-demo.appspot.com/ 只需查看网站源代码,您就可以获得适用于它的 appID。
另一个是 twitter PIN oauth,它正在工作并且公开可用(我正在使用它) https://dev.twitter.com/docs/auth/pin-based-authorization
Facebook 设备登录适用于直接通过 Internet 进行 HTTP 调用的设备。以下是您的设备可以进行的 API 调用和响应。
1.启用设备登录
将设置 > 高级 > OAuth 设置 > 从设备登录更改为“是”。
2.生成Facebook设备识别所需的代码
当此人单击使用 Facebook 登录时,您的设备应发送 HTTP POST 到:
POST https://graph.facebook.com/oauth/device?
type=device_code
&client_id=<YOUR_APP_ID>
&scope=<COMMA_SEPARATED_PERMISSION_NAMES> // e.g.public_profile,user_likes
响应以这种形式出现:
{
"code": "92a2b2e351f2b0b3503b2de251132f47",
"user_code": "A1NWZ9",
"verification_uri": "https://www.facebook.com/device",
"expires_in": 420,
"interval": 5
}
此响应意味着:
3.显示代码
您的设备应显示 user_code 并告诉人们在他们的 PC 或智能手机上访问 verify_uri,例如 facebook.com/device。请参阅设计指南。
4. 投票授权
您的设备应轮询设备登录 API 以查看此人是否成功授权您的应用程序。您应该在步骤 1 中响应您的呼叫的时间间隔内执行此操作,即每 5 秒一次。您的设备应轮询:
POST https://graph.facebook.com/oauth/device?
type=device_token
&client_id=<YOUR_APP_ID>
&code=<LONG_CODE_FROM_STEP_1> //e.g."92a2b2e351f2b0b3503b2de251132f47"
您将获得 200 HTTP 代码,即用户已成功授权设备。设备现在可以使用 access_token 值进行经过身份验证的 API 调用。
5.确认登录成功
您的设备应显示他们的姓名和个人资料图片(如果有),直到他们单击继续。要获取此人的姓名和头像,您的设备应进行标准 Graph API 调用:
GET https://graph.facebook.com/v2.3/me?
fields=name,picture&
access_token=<USER_ACCESS_TOKEN>
回复:
{
"name": "John Doe",
"picture": {
"data": {
"is_silhouette": false,
"url": "https://fbcdn.akamaihd.net/hmac...ile.jpg"
}
},
"id": "2023462875238472"
}
6. 存储访问令牌
您的设备应保留访问令牌以向 Graph API 发出其他请求。
设备登录访问令牌的有效期最长为 60 天,但在许多情况下可能会失效。例如,当一个人更改他们的 Facebook 密码时,他们的访问令牌就会失效。
如果令牌无效,您的设备应从其内存中删除令牌。使用您的设备的人需要从第 1 步再次执行设备登录流程以检索新的有效令牌。
没有 facebook sdk 的智能电视/设备的 Facebook 登录可以通过代码进行,请在此处查看文档:
https://developers.facebook.com/docs/facebook-login/for-devices
他们再次改变它。目前文档不符合实际情况。
通常所有工作都按预期工作,但有一点点不同。Login from Devices
配置现在移动到Products -> Facebook Login
.
所以你需要:
App id
从标题中获取您的信息,Client Token
从应用程序获取Settings -> Advanced
。还有Native or desktop app?
问题/配置。我打开它。Add product
,然后点击。回到您的应用配置,点击新添加Get started
的,您将看到您的配置。Facebook login
Facebook login
Login from Devices