繁体   English   中英

api/rest-auth/facebook/ 中的值不正确

[英]Incorrect value in api/rest-auth/facebook/

我有一个与我从 React Native 应用程序收到的 access_token 相关的问题。 React Native 应用程序使用 expo-facebook 库,当身份验证的弹出窗口消失时,将创建令牌并将其发送到后端 API。 令牌由 logInWithReadPermissionsAsync 方法创建。

const { type, token, expirationDate, permissions, declinedPermissions, graphDomain } =
            await Facebook.logInWithReadPermissionsAsync({
              permissions: ["public_profile", "email"],
            });

我看到服务器在 http://localhost:8000/api/rest-auth/facebook/ 端点上收到了这个令牌,并将其发送到 Facebook 端点验证。 问题出现在 Facebook 的响应上。 我希望它应该对 Facebook 有效,但似乎出了点问题。

HTTP 400 Bad Request
Allow: POST, OPTIONS
Content-Type: application/json
Vary: Accept

    {
        "non_field_errors": [
            "Incorrect value."
        ],
        "code": 400,
        "message": "Bad Request"
    }

我在 Graph API Explorer 中生成的访问令牌比在 React Native expo 应用程序中生成的令牌更短(当我使用它时,它在后端应用程序中工作)。 为什么这两个令牌不同? 为什么它不能按我的预期工作?

我发现问题出在哪里。 我知道问题出在令牌上,一个好的方向是来自 Facebook 的响应。

{"error":{"message":"Invalid appsecret_proof provided in the API argument","type":"GraphMethodException","code":100}}.

在那之后,我意识到 React Native Expo 可能有问题。 当您传递应用程序 ID 时,Expo-facebook 没有反应,它使用了在 expo 环境中定义的错误应用程序 ID(APP_ID=1696089354000816)。 App-id 是在设置中设置的,也在

await Facebook.initializeAsync({
      appId: '<APP_ID>',
    });".

所以主要问题是我依赖了一个不属于我的应用程序的 access_token。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM