Passport-facebook登录报错:应用已上线仍提示处于开发模式
解决Facebook应用已上线仍显示开发模式错误的排查方案
嘿,我之前帮朋友排查过一模一样的问题,给你几个实操性的排查步骤,一个个来试,大概率能解决:
- 确认应用状态真的切换到Live:别只看页面顶部的状态标记,进入「App Dashboard」→「Settings」→「Basic」,拉到页面最底部查看「App Status」,确保它明确显示「Live」。如果状态显示异常,尝试重新点击切换按钮(若可操作),或刷新页面后再次确认。
- 检查权限审核状态:即使应用上线,如果你用到了需要Facebook审核的权限(比如
email、user_friends这类),未通过审核的话普通用户依然会看到错误提示。进入「App Review」→「Permissions and Features」,确认所有你使用的权限都标记为「Approved」;若有「Pending」或「Rejected」的权限,要么重新提交审核,要么暂时移除未通过的权限再测试。 - 验证隐私政策与服务条款的有效性:虽然你添加了URL,但Facebook可能无法抓取到页面内容。确保这两个页面是公开可访问的(没有登录墙、地域限制),且内容符合Facebook的要求:比如隐私政策需明确说明收集的用户数据类型、使用用途、存储方式等。你可以用Basic设置里对应输入框旁的「Policy URL Validator」工具检查,看是否有抓取错误。
- 排查用户角色与测试账号设置:如果用的是未注册的测试账号或未添加到应用角色的账号访问,即便应用上线也会报错。先换一个完全没关联过该应用的普通Facebook账号测试;如果是内部测试,确保把测试用户添加到「Roles」→「Test Users」,或给相关账号分配「Developer」「Tester」角色。
- 清除缓存并重新授权:浏览器缓存或旧的授权令牌可能导致状态未更新。试试清除浏览器缓存,或者在Facebook的「设置」→「应用和网站」里找到你的应用,点击「移除」后重新授权登录。
- 检查平台配置的一致性:如果是Web应用,确保「Settings」→「Basic」里的「Website」URL和实际部署的域名完全一致;如果是移动端,包名、签名信息要和实际应用匹配。平台配置不匹配也会导致Facebook无法识别应用的上线状态。
内容的提问来源于stack exchange,提问作者Ashish Goyal
相关产品推荐
相关产品推荐

