414 Request-URI Too Large ошибка. API Python
Решил в качестве развития, написать простенький код который поможет загружать мне фото-файлы на ImgBB. При использовании base64 (требование), оно выдает ошибку. Я думал что ошибка в POST|GET запросах, но вроде все правильно. Тем не менее выдает ошибку 414. Можете чем-то подсобить?
import requests
import base64
res = requests.get('https://imgbb.com/')
print(res.status_code)
API_KEY = 'bbb346b8fda3393ca60bdb1ba16fd8cf'
url = 'https://api.imgbb.com/1/upload'
img = base64.b64encode(open("image.png", "rb").read())
params = dict(key=API_KEY, image=img)
res = requests.get(url, params=params)
print(res.text)
Ответы (1 шт):
А теперь открываем документацию и сервиса и читаем:
API v1 calls can be done using the POST or GET request methods but since GET request are limited by the maximum allowed length of an URL you should prefer the POST request method
Вызовы API v1 могут быть выполнены с помощью методов запроса POST или GET, но поскольку запрос GET ограничен максимально допустимой длиной URL, вам следует предпочесть метод запроса POST.
Note: Always use POST when uploading local files. Url encoding may alter the base64 source due to encoded characters or just by URL request length limit due to GET request.
Примечание: Всегда используйте POST при загрузке локальных файлов. Кодировка Url может изменять источник base64 из-за кодированных символов или просто из-за ограничения длины URL в GET запросе.