Как отправить большой файл JSON через запрос Python http - PullRequest
0 голосов
/ 05 июля 2018

Я использую две службы на моей локальной машине. Я хочу отправить данные из службы 1 в службу 2, которая находится на порту 8004. Я делаю следующее:

r = requests.get('http://127.0.0.1:8004/json_data='+json.dumps(json_data))

Я получаю эти 2 ошибки:

ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host

ConnectionError: ('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))

Я предполагаю, что отправляю большой файл, вызывающий проблему. Мой файл имеет размер 15 МБ, это словарь Python, который я отправляю через json.dumps ()

Любая рекомендация для преодоления этой ошибки?

1 Ответ

0 голосов
/ 05 июля 2018

HTTP GET-запросы имеют ограничение, когда дело доходит до размера запроса. Стандартов нет, но я думаю, что максимальный размер наиболее поддерживаемого браузера составляет около 200 КБ, что намного ниже того, что вы пытаетесь отправить. Альтернативой может быть использование POST, но оно также имеет ограничения около 2 МБ, которые варьируются от браузера к браузеру и от сервера к серверу. Итак, у вас есть два варианта:

  • Попробуйте загрузить файл.
  • Разбейте свою полезную нагрузку.

Надеюсь, это поможет.

...