snapchat - 如何使用从 Snapchat 收到的 AccessToken 来获取 UserData?
问题描述
在 snapkit 登录文档 (WEB) 之后,我实现了服务器端代码并能够为用户获取访问令牌(第 2.5 节,位于https://docs.snapchat.com/docs/tutorials/login-kit/web/)。
如何使用此令牌实际获取用户数据?没有提到必须为前做些什么。使用访问令牌发出 POST / GET 请求?我认为这是该过程中最关键的部分,文档中似乎缺少它。
我还尝试使用 SCSDKLoginClient.getAccessToken(),我能够从 Snapchat 为已登录的用户检索令牌。但是,我也找不到任何关于如何在那里获取用户数据的文档。唯一提到的是回调 fetchUserData() 但那里也没有 Token 字段。
解决方案
多亏了 Snapchat 支持,我在经过长时间的研究后找到了答案,从而回答了我自己的问题。
通过以下文档获取访问令牌后,请按照以下步骤获取用户信息。
(将 ACCESS_TOKEN 换成您自己的访问令牌。)
发出 POST 请求
URL: "https://kit.snapchat.com/v1/me"
Headers = {'Content-Type': 'application/json', 'Authorization': 'Bearer ' + access_token}
jSON_body= {"query":"{me{displayName bitmoji{avatar} externalId}}"}
这应该返回带有用户信息的 JSON 结果,如下所示:
{
"data": {
"me": {
"displayName": "DISPLAY_NAME",
"bitmoji": {
"avatar": "URL_BITMOJI_IMAGE"
},
"externalId": "EXTERNAL_ID"
}
},
"errors": []
}
推荐阅读
- apache - 如何正确使用 Nginx 作为具有 SSL 的多个 Apache Docker 容器的反向代理?
- python - 如何在 python 中按年分隔熊猫数据框?
- python - Python - 库在虚拟环境中存储在哪里?
- python - 在指定的索引列表上将数组设置为零
- angular - 更新到 Angular 10 后找不到命名空间
- selenium - Selenium 命令不显示 - 打开浏览器 - Robot Frameword Ride
- eclipse - 无法在 macOS Big Sur 上运行 Eclipse
- reactjs - 如何更新状态以等待 React 中的功能完成
- django - 使用 supervisord 运行时,Daphne 多进程退出工作。设置 4 个进程,但只有 1 个继续运行
- python - Python 中的 Input() 函数不起作用