LinkedIn API SSO登录返回500内部服务器错误求助
检查Scope参数合法性
你使用的r_emailaddress是LinkedIn旧版API的权限标识,当前OAuth 2.0标准已改用email作为邮箱权限的scope值。旧版scope可能已被废弃,尝试替换为scope=email后重新发起请求。验证State参数有效性
State参数需为随机生成的纯字母数字字符串,避免包含特殊字符或未编码的符号。可临时替换为简单值(如test123)测试,排除参数解析失败导致的服务端错误。核对Redirect URI的完全匹配性
再次确认LinkedIn开发者后台配置的redirect_uri与请求中的地址完全一致,包括协议(http/https)、域名、路径,甚至大小写都必须严格匹配,哪怕细微差异都可能触发异常。检查应用状态与测试权限
登录LinkedIn开发者后台查看应用状态:- 若应用处于未发布状态,需确保当前测试账号已添加到应用的「测试人员」列表中,未授权的账号访问会触发服务端错误;
- 确认应用的OAuth 2.0配置项(如授权流程、权限范围)未被误修改。
排查临时服务端故障
500错误可能是LinkedIn服务端临时波动导致,可间隔10-15分钟后重新请求,或切换到稳定的网络环境测试,排除网络波动引发的请求异常。检查请求标识(针对代码发起的请求)
若通过代码而非浏览器发起请求,需确保请求头包含合法的User-Agent字段,部分服务端会拒绝无标识的请求。可模拟浏览器的User-Agent值(如Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36)后重试。
内容的提问来源于stack exchange,提问作者Mehran Ishanian

