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

Directus集成LinkedIn OAuth2失败,回调遇参数缺失或认证错误

集成LinkedIn OAuth到Directus的问题求助

核心疑问

Directus支持OAuth2认证,但官方未明确提及是否支持LinkedIn OAuth,求有成功集成经验的用户确认可行性。

报错信息

初始回调错误

{
    "errors": [
        {
            "message": "Service \"oauth2\" is unavailable. Service returned unexpected response: A required parameter \"client_id\" is missing.",
            "extensions": {
                "service": "oauth2",
                "reason": "Service returned unexpected response: A required parameter \"client_id\" is missing",
                "code": "SERVICE_UNAVAILABLE"
            }
        }
    ]
}

修改node_modules代码后新错误

{
  "errors": [
    {
      "message": "Service \"oauth2\" is unavailable. Service returned unexpected response: Client authentication failed.",
      "extensions": {
          "service": "oauth2",
          "reason": "Service returned unexpected response: Client authentication failed",
          "code": "SERVICE_UNAVAILABLE"
      }
    }
  ]
}

当前配置详情

LinkedIn开发者平台配置

  • 已生成client_id和client_secret
  • 已验证组织
  • OAuth权限范围:openid, profile, w_member_social, email
  • 已添加两个产品:Share on LinkedIn、Sign In with LinkedIn using OpenID Connect

Directus .env配置

AUTH_LINKEDIN_DRIVER="oauth2"
AUTH_LINKEDIN_CLIENT_ID="MY_CLIENT_ID"
AUTH_LINKEDIN_CLIENT_SECRET="MY_CLIENT_SECRET"
AUTH_LINKEDIN_AUTHORIZE_URL="https://www.linkedin.com/oauth/v2/authorization"
AUTH_LINKEDIN_ACCESS_URL="https://www.linkedin.com/oauth/v2/accessToken"
AUTH_LINKEDIN_PROFILE_URL="https://api.linkedin.com/v2/userinfo"
AUTH_LINKEDIN_ALLOW_PUBLIC_REGISTRATION=true
AUTH_LINKEDIN_DEFAULT_ROLE_ID="9a2d0b06-3dd5-4d07-9464-8ad6defce1af"
AUTH_LINKEDIN_SCOPE="email,profile"
AUTH_LINKEDIN_ICON="linkedin"
AUTH_LINKEDIN_LABEL="LinkedIn"
AUTH_LINKEDIN_EMAIL_KEY="email"

问题复现流程

  1. 访问http://localhost:8055/auth/login/linkedin端点,正常重定向到LinkedIn认证页面;
  2. 完成LinkedIn认证后,回调到http://localhost:8055/auth/login/linkedin/callback,触发"client_id缺失"错误;
  3. 尝试修改node_modules中的代码:
    原代码:
    tokenSet = await this.client.oauthCallback(this.redirectUrl, { code: payload['code'], state: payload['state'] }, { code_verifier: payload['codeVerifier'], state: codeChallenge }});
    
    修改为:
    tokenSet = await this.client.oauthCallback(this.redirectUrl, { code: payload['code'], state: payload['state'] }, { code_verifier: payload['codeVerifier'], state: codeChallenge },{exchangeBody:{client_id:"776czrm1do3mid",client_secret:"WPL_AP1.dpyruNgJIBPKB58Z.BElWWw=="}});
    
  4. 修改后触发"Client authentication failed"错误。

求助

求可行的解决方案,或成功集成LinkedIn OAuth到Directus的配置经验。

内容的提问来源于stack exchange,提问作者Viraj faldu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 16:10:05