如何在本地测试Google App Engine上的Facebook应用程序(代码191错误)?

时间:2011-09-25 18:14:20

标签: google-app-engine facebook-apps

我想在本地进行测试和开发,同时让应用程序播出,我宁愿不使用两个单独的应用程序ID,因为这意味着每次部署新版本然后更改它时我都必须更改代码回来。

我知道我可以更改主机文件以便localdev.{{my application URL}}引用localhost并且URL有效,因此我不会获得191代码,但Google App Engine启动器强制我使用端口8080,这不能在主机文件中定义。如果我尝试输入localdev.{{my application URL}}:8080,我会再次收到191错误代码。

有没有办法在Google App Engine启动器上使用端口80?

还是有另一种解决方案吗?

更新

  1. 我设法通过使用Google App Engine目录中的Python文件而不是Google App Engine启动器GUI在端口80上本地运行。但是,Facebook不会将localdev.{{my application URL}}识别为URL,它仍然会给我相同的错误代码,191。

  2. 我将主机文件更改为{{my application URL}}而没有“localdev”。它起作用了,所以这必须意味着URL必须完全匹配,而不仅仅是域。这是真的?无论如何,它不是最佳的,因为这意味着我必须一直更改主机文件,但这是你可以忍受的东西......

1 个答案:

答案 0 :(得分:2)

我有2个Facebook应用程序,一个带有我的真实URL(用于制作),另一个带有http://127.0.0.1/(用于开发)。然后我在我的代码中有一个实用程序函数,它检查self.request.host,并选择适当的应用程序ID和密码。

我使用http://127.0.0.1/而不是http://localhost/http://localhost:8080/的原因是我发现只有http://127.0.0.1/可以在Internet Explorer中使用(其他浏览器似乎与其他两个网址一样好) ,只要他们匹配Facebook应用程序。)