无法通过Android应用访问我的笔记本电脑的本地主机

时间:2014-05-17 22:31:57

标签: android python django localhost django-rest-framework

所以我在发布之前进行了一项研究,我发现的解决方案并没有发挥作用,更确切地说:

- 连接到我的笔记本电脑的IPv4 192.168.XXX.XXX-没有工作

- 对10.0.2.2(加上端口) - 没有工作

我需要测试我使用Django Rest框架构建的API,这样我就可以获得它返回的json,但是我无法通过Android应用程序进行构建(我使用真实设备进行测试,而不是模拟器) 。在Manifest上设置了Internet权限,我可以正常访问远程网站。只是无法访问我的笔记本电脑的本地主机(它们位于同一网络中)

我对Android,Python和Django也很陌生(用于构建Django的Rest Framework API)。

编辑:我使用localhost:8000 / snippets.json或像这样连接我的笔记本电脑。

PS:我读过有关XAMP服务器的内容......在这种情况下我需要吗?

提前致谢

3 个答案:

答案 0 :(得分:2)

你是否已经像这样启动了服务器?

python manage.py runserver 0.0.0.0:8000

然后,尝试连接到192.168.XXX.XXX:8000

答案 1 :(得分:0)

我尝试了上述内容,但在我的案例中没有成功。然后跑步 python manage.py runserver 0.0.0.0:8000我还必须将我的IP添加到settings.py中的ALLOWED_HOSTS,这解决了这个问题。

例如。 将您的IP添加到settings.py中允许的主机  ALLOWED_HOSTS = [' 192.168.XXX.XXX']

然后运行服务器 python manage.py runserver 0.0.0.0:8000

答案 2 :(得分:0)

其他人已经给出了答案,但是当我在Ubuntu上运行Django服务器并尝试从我的移动应用访问它时,这些解决方案对我不起作用。

以下是对我有用的东西:

步骤1:运行服务器以从您的IP访问它

python manage.py runserver 0.0.0.0:8000

步骤2:在防火墙中打开端口(上述给出的答案中的遗漏步骤-Ubuntu所需)

$ sudo ufw enable 
$ sudo ufw allow 8000