首页 > 解决方案 > 如何使用从 Snapchat 收到的 AccessToken 来获取 UserData?

问题描述

在 snapkit 登录文档 (WEB) 之后,我实现了服务器端代码并​​能够为用户获取访问令牌(第 2.5 节,位于https://docs.snapchat.com/docs/tutorials/login-kit/web/)。

如何使用此令牌实际获取用户数据?没有提到必须为前做些什么。使用访问令牌发出 POST / GET 请求?我认为这是该过程中最关键的部分,文档中似乎缺少它。

我还尝试使用 SCSDKLoginClient.getAccessToken(),我能够从 Snapchat 为已登录的用户检索令牌。但是,我也找不到任何关于如何在那里获取用户数据的文档。唯一提到的是回调 fetchUserData() 但那里也没有 Token 字段。

标签: snapchatsnapkit

解决方案


多亏了 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": []
}

推荐阅读