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

Incorrect value in api/rest-auth/facebook/

我有一个与 access_token 有关的问题,这是我从 React Native 应用程序收到的。 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 可能有问题。 Expo-facebook 即使您传递应用程序 ID 也没有反应,它使用了在 expo 环境中定义的错误应用程序 ID (APP_ID=1696089354000816)。 App-id 已在设置中设置,也在

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

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