You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用django-allauth和django-rest-auth实现Facebook注册失败,提示Incorrect value错误

Facebook社交认证返回"Incorrect value"错误排查

问题场景

使用django-allauth和django-rest-auth实现Facebook社交认证,视图代码如下:

from allauth.socialaccount.providers.facebook.views import FacebookOAuth2Adapter
from allauth.socialaccount.providers.oauth2.client import OAuth2Client

class FacebookLoginView(SocialLoginView):
    adapter_class = FacebookOAuth2Adapter
    client_class = OAuth2Client

向该视图发送携带access_token的POST请求时,返回错误:

{"non_field_errors":["Incorrect value"]}

可能的原因及解决方法

  • Access Token无效或格式错误
    确认access_token是否正确生成、未过期,且属于你的Facebook应用。检查请求参数名是否为access_token,避免拼写错误(如accessToken)。

  • Facebook应用配置不匹配

    1. 登录Django后台,检查Social Application中的App ID、App Secret是否与Facebook开发者后台的应用信息完全一致;
    2. 确保Facebook开发者后台的Valid OAuth Redirect URIs包含你的应用回调地址,且与Django配置的站点域名一致;
    3. 确认应用已开启认证所需的权限(如email)。
  • 视图缺少回调地址配置
    OAuth2Client需要指定回调地址,在视图中添加callback_url字段:

    class FacebookLoginView(SocialLoginView):
        adapter_class = FacebookOAuth2Adapter
        client_class = OAuth2Client
        callback_url = "http://你的域名/accounts/facebook/login/callback/"
    

    该地址需与Facebook后台配置的回调地址完全一致。

  • 请求数据格式错误
    确保POST请求的Content-Type为application/json或application/x-www-form-urlencoded,且请求体中的access_token无多余空格或特殊字符。

  • 依赖库版本不兼容
    检查django-allauth和django-rest-auth的版本是否匹配,尝试升级至两者的最新稳定版。

内容的提问来源于stack exchange,提问作者umair mehmood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 21:51:16