繁体   English   中英

尝试向 Django REST 服务器发出请求时获取 net::ERR_CONNECTION_REFUSED

[英]Getting net::ERR_CONNECTION_REFUSED when trying to make a request to Django REST Server

我正在尝试通过使用本地网络中的其他设备来测试 Django 应用程序。 我使用 Angular 作为我的客户。
到目前为止,我可以在其他设备上运行我的 Angular 应用程序。 但是,每当我尝试发出任何类型的请求时,我都会收到一个响应,指定: net::ERR_CONNECTION_REFUSED

我能够在我的本地计算机上正确运行客户端应用程序和 Django REST 服务器,但在其他设备上并非如此。

基于一些已经发布的解决方案,我已经完成了:

  1. Binding Django server to IP: 0.0.0.0:8000 by running python.\manage.py runsslserver --certificate.\ssl\server.crt --key.\ssl\server.key 0.0.0.0:8000 (I am using SSL对于客户端和服务器)。
  2. 在 settings.py 中将ALLOWED_HOSTS设置为['*']

但错误仍然存在。 如果这很重要,我正在使用的所有设备(包括我的本地机器)都是 Windows。


有人可以帮我解决这个问题吗? 或者还有其他方法可以运行 API 服务器吗?

嗨,我认为这是 cors 的问题。 您可以尝试安装 django-cors-headers。 是一个关于如何做到这一点的小指南。 我希望它对你有帮助。 请记住在 CORS_ALLOWED_ORIGINS 中添加运行 angular 的主机和端口。 例如,如果 angular 在端口 3000 上运行:

CORS_ALLOWED_ORIGINS = [
    'http://localhost:3000',
]

得到它的工作。
这只是我的 angular 应用程序配置中的一个小错误,用于访问 API URL。
只需更新运行 API 服务器的 IP 地址(或 URI)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM