我有一个开发服务器(Java servlet 容器)在我的专用网络(IP 范围192.168.0.0
到192.168.255.255
)内的计算机上运行。该开发服务器执行我的集成测试环境。这个测试环境有自己的 Facebook App ID。让服务器在该192.168.x.y
范围内运行允许我的同事测试网站、使用他们的 Facebook 帐户登录我的本地网站等。
在https://developers.facebook.com -> 在 Facebook 应用程序设置 -> 位于“基本设置”下 -> 在“使用 Facebook 登录的网站”字段中,我已设置http://192.168.2.106:8080
,因为这是地址端口组合我的开发服务器绑定到。
由于 DHCP,我的计算机现在的 IP 地址略有不同,即192.168.2.109
. 每当我启动我的服务器然后尝试做任何与 Facebook-API 相关的事情(例如 Facebook 登录)时,我都会从 Facebook 收到以下错误消息
{
"error": {
"message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration.",
"type": "OAuthException",
"code": 191
}
}
有没有办法让 Facebook 应用程序允许“使用 Facebook 登录的 IP 地址网站范围”?您还能建议哪些其他解决方案?
我的同事们也应该能够在他们自己的机器上使用他们自己的私有网络地址启动开发服务器。因此,同一个 Facebook App ID 应该可以在具有不同 IP 地址的不同机器上运行,并且仍然可供专用网络内的每个人访问。
请注意,将“使用 Facebook 登录的网站”设置为localhost
使开发服务器仅可用于运行它的同一台机器。不幸的是,这会阻止同事访问此开发服务器实例。