В приложении, состоящем из нескольких микросервисов, запускаемых через docker-compose, мне нужен способ сделать запрос из одного контейнера (app
через флешку и запросы) напрямую в другой (chart
/ django):
Это упрощенная версия того, что я пытаюсь сделать.
rout.py:
@APP.route('/post_data', methods=['POST'])
def post_data():
post_data = request.get_json()
response = requests.post('http://chart_app_1:8080/json/', data=post_data)
return response.text
В ответ я получаю сообщение об ошибке:
django.core.exceptions.DisallowedHost: Invalid HTTP_HOST header: 'chart_app_1:8080'. The domain name provided is not valid according to RFC 1034/1035
Я могу сделать такой запрос в другие контейнеры, на которых запущены приложения-фляги, без проблем.У меня нет никакого контроля над тем, используем ли мы Django для этого конкретного микросервиса.
Похоже, что это может быть потому, что в имени хоста есть подчеркивание: см. Этот пост ,Это можно обойти?Похоже, что можно сделать простой запрос между контейнерами.