Мне нужно загрузить большой файл на удаленный сервер, используя Python Запросы. Видимо, запросы автоматически переключают тип контента на «multipart / form-data», когда мы используем параметр files
:
import io
import requests
from pprint import pprint
r =requests.put('https://httpbin.org/anything/{anything}',
files={ 'filename': io.BytesIO(b'many many bytes')})
pprint(r.json())
{'args': {},
'data': '',
'files': {'filename': 'many many bytes'},
'form': {},
'headers': {'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Content-Length': '163',
'Content-Type': 'multipart/form-data; '
'boundary=f75a6ed22a9281aab1e6c7288ff34583',
'Host': 'httpbin.org',
'User-Agent': 'python-requests/2.23.0',
'X-Amzn-Trace-Id': 'Root=1-5e8de885-83470619f8a4a57e3351b868'},
'json': None,
'method': 'PUT',
'origin': '80.67.177.9',
'url': 'https://httpbin.org/anything/{anything}'}
К сожалению, мой сервер не понимает который. Есть ли способ отключить эту функцию, чтобы вернуться к простой загрузке HTTP?
FWIW, файл слишком велик для размещения в основной памяти.