在我的Android模拟器中,我能够联系GAE开发服务器。 我使用这个网址:" http://10.0.2.2:8080/myurl"。 服务器正在监听http://127.0.0.1:8080。
然后,在我使用Google Play(API 27)将模拟器更新为Nexus 5X版本后,连接失败,服务器显示此日志:
ERROR 2018-01-11 11:17:05,463 wsgi_server.py:329]请求主机10.0.2.2未列入白名单。设置已启用的主机([' 127.0.0.1'])
我使用最新的GAE python SDK和webapp2。
关于如何解决问题的任何想法?
答案 0 :(得分:7)
最新版本的开发服务器包括对传入请求的源IP地址的白名单检查。
您可以使用GAE devserver的--enable_host_checking=False
命令行选项来禁用这些检查。如果您在不受信任的网络上运行,那不是一个好主意。
即使从同一台计算机访问devserver,您可能也会看到此类错误。这些请求的另一个选择是使用--host 10.0.2.2
devserver选项(即使用机器的外部IP地址而不是localhost
/ 127.0.0.1
,但如果模拟器请求无效,则无效你正在其他机器上运行模拟器。
理想情况下,白名单应该可以独立于服务器的IP地址进行管理,但这是目前可用的。