Ошибка 429 Imgur: только при попытке получить доступ к изображению из приложения Django
В принципе, у меня есть активный проект Django, где в модуле я загружаю изображения на сервер Imgur и получаю их в качестве фонового изображения для создания PDF, используя прямую ссылку на изображения (https://i.imgur.com/
Проблема заключается в том, что при попытке получить любое изображение с сервера django, который работает на IP-адресе локальной сети (поскольку сервер Imgur блокирует localhost), сервер отвечает странным кодом ошибки 429.
Странно то, что я могу загружать изображения в свое приложение без каких-либо проблем, а также получать доступ к прямым ссылкам на изображения из postman API / браузера, но как только я пытаюсь прочитать прямую ссылку на изображение с моего Django сервера, imgur отвечает кодом состояния 429.
Данные о предельной скорости для моего приложения:
{
"data": {
"UserLimit": 500,
"UserRemaining": 499,
"UserReset": 1709980963,
"ClientLimit": 12500,
"ClientRemaining": 12495
},
"success": true,
"status": 200
}
Код запроса:
import requests
id = '<hash>'
res = requests.get(f'https://i.imgur.com/{id}.png')
# print(res.json()) #! Throws JSONDecodeError
print({
"Headers": res.headers,
"status_code": res.status_code,
"reason": res.reason,
"content": res.text,
"url": res.url,
})
Заголовки и содержимое ответа, которые я извлек из отладки, потому что метод res.json()
не работает
{
"Headers": {
"Connection": "close",
"Content-Length": "0",
"Retry-After": "0",
"Cache-Control": "no-store, no-cache, must-revalidate, post-check=0, pre-check=0",
"Accept-Ranges": "bytes",
"Date": "Sat, 09 Mar 2024 10:10:15 GMT",
"X-Served-By": "cache-ams21065-AMS",
"X-Cache": "MISS",
"X-Cache-Hits": "0",
"X-Timer": "S1709979016.797421,VS0,VE0",
"Strict-Transport-Security": "max-age=300",
"Access-Control-Allow-Methods": "GET, OPTIONS",
"Access-Control-Allow-Origin": "*",
"Server": "cat factory 1.0"
}
"status_code": 429
"reason": "Unknown Error"
"content": ""
"url": "https://i.imgur.com/\<hash\>.png"
"_content_consumed": true
"is_permanent_redirect": false
"is_redirect": false
}
Есть идеи, что может быть причиной этой проблемы?