Я пытаюсь написать зеркало FastAPI, чтобы возвращать общедоступные репозитории GitHub для загрузки на локальном компьютере, который не имеет доступа к более широкому Интернету. Однако, когда я тыкаю в написанную мной конечную точку, я получаю ответ «Неверные учетные данные» от GitHub.
Интересно, что когда я делаю тот же запрос через Python в терминале на том же устройство, на котором я запускаю конечную точку FastAPI, запрос одобрен, и я получаю ответ, содержащий ресурсы пакета и URL-адреса загрузки, которые мне нужны.
Почему мой запрос через Python в терминале одобрено, а не через FastAPI, хотя оба исходят от одного и того же устройства? В обоих случаях я не предоставил никаких учетных данных, поскольку конечные точки API GitHub для общедоступных выпусков должны быть доступны без необходимости аутентификации (соответствующий раздел документации GitHub REST API здесь).
код, который я использую для справки:
"""
API endpoint in question
"""
import requests
from fastapi import APIRouter, Response
windows_terminal = APIRouter(prefix="/microsoft/terminal")
@windows_terminal.get("/releases/latest", response_class=Response)
def get_latest_windows_terminal_release():
url = "https://api.github.com/repos/microsoft/ ... ses/latest"
response = requests.get(url)
return Response(
content=response.content,
status_code=response.status_code,
headers=response.headers,
)
При таком запуске указанная выше конечная точка возвращает ответ «Неверные учетные данные». Однако когда я предоставляю токен личного доступа GitHub в заголовке, он отлично возвращает данные о выпусках пакетов.
"""
From Python in the terminal on the same device
"""
$ python
$ import requests
$ url = "https://api.github.com/repos/microsoft/ ... ses/latest"
$ response = requests.get(url)
$ print(response.text)
Этот параметр командной строки успешно возвращает объект JSON с информацией о последней версии нужного мне пакета, даже если я не предоставляю ему токен GitHub.
А вот заголовки ответа и запроса к конечной точке API, которые я написал, когда получил ответ «Неверные учетные данные»:
Подробнее здесь: https://stackoverflow.com/questions/790 ... ng-request
Невозможно получить доступ к общедоступному репозиторию GitHub через конечную точку API при отправке запроса через FastA ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как правильно подготовить объект JSON для отправки в конечную конечную точку? [закрыто]
Anonymous » » в форуме Php - 0 Ответы
- 64 Просмотры
-
Последнее сообщение Anonymous
-