Получение net::ERR_CONNECTION_REFUSED при попытке сделать запрос к 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 for both client and server).
  2. Setting ALLOWED_HOSTS to ['*'] in settings.py.

Но ошибка все еще сохраняется. На всех устройствах (включая мою локальную машину), которые я использую, стоит Windows, если это важно.


Может ли кто-нибудь помочь мне решить эту проблему? Или есть другие способы запустить сервер API?

Здравствуйте, я думаю, что это проблема с cors. Вы можете попробовать установить django-cors-headers. Здесь есть небольшое руководство о том, как это сделать. Не забудьте добавить в CORS_ALLOWED_ORIGINS хост и порт, на котором запущен angular. Например, если angular работает на порту 3000:

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

Заработало.
Это была просто небольшая ошибка в конфигурации моего приложения angular для доступа к URL API.
Просто нужно было обновить IP-адрес (или URI), на котором был запущен сервер API.

Вернуться на верх