python: HTTP PUT с незакодированными двоичными данными

Я не могу понять, как выполнить HTTP-запрос PUT с дословными двоичными данными в Python 2.7 со стандартными библиотеками Python.

Я думал, что смогу сделать это с помощью urllib2, но не удалось , потому что urllib2.Request ожидает своих данных в application / x-www-form-urlencoded формат. Я не хочу кодировать двоичные данные, я просто хочу передать их дословно, после заголовков, включающих

Content-Type: application/octet-stream
Content-Length: (whatever my binary data length is)

Это кажется таким простым, но я продолжаю ходить по кругу и, кажется, не могу понять, как это сделать.

Как я могу это сделать? (кроме открытия сырого двоичного сокета и записи в него)

10
задан Community 23 May 2017 в 11:53
поделиться