Я хочу отправить текстовые значения вместе с изображением в API. Другой API, использующий django -rest-framework.
Я сделал это,
from PIL import Image
from io import BytesIO
os.environ['NO_PROXY'] = '127.0.0.1'
response = requests.get(url_logo)
site_logo = Image.open(BytesIO(response.content))
files = {'site_logo':site_logo}
profile_payload = {"name":"Mark Johnson", "address":"dave str.blvd"}
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
requests.post(profile_url, data=profile_payload, files=files, headers=headers,
timeout=conn_timeout, stream=True)
Я получил эту ошибку.
TypeError: a bytes-like object is required, not 'PngImageFile'
Сериализатор:
class AddProfile(serializers.Serializer):
name = serializers.CharField(required=True, max_length=150)
address = serializers.CharField(required=True, max_length=100)
site_logo = serializers.ImageField(required=False)
Я изменил site_lo go на это:
site_logo = BytesIO(response.content)
Затем он полностью сломался из-за тайм-аута и дал мне ошибку сброса однорангового соединения.
Что мне не хватает ?