Django rest_framework с базовым auth, как использовать api с django

Я создал API с базовой аутентификацией, и мне интересно, как я могу использовать его с именем пользователя и паролем

это моя конечная точка

http://127.0.0.1:8000/Clerk/

Я стараюсь потреблять его по

def display_clerk_view(request):
    displaytable = requests.get('http://127.0.0.1:8000/Clerk/')
    jsonobj = displaytable.json()
    return render(request, 'clearance/clerk_view.html', {"ClerkClearanceItems": jsonobj})

этот блок кода и он выдает мне ошибку Unauthorized: /Clerk/

Я планирую использовать django all-auth с google в качестве провайдера, но пока я хочу знать, как работает потребление api с аутентификацией

это учебник, которому я следую https://www.geeksforgeeks.org/basic-authentication-django-rest-framework/?tab=article

В этом случае вы запрашиваете "/Clerk/", но запрос возвращается неавторизованным. Есть два способа решить эту проблему:

  1. Удалите разрешение аутентификации из представления (если представление основано на функции, удалите декоратор login_required или условие is_authenticated из представления. Если представление основано на классах, добавьте "permission_classes = [AllowAny, ]")
  2. .

Вы дали ссылку: Там используется декоратор под названием "permission_classes", Вы можете заменить "@permission_classes([IsAuthenticated])" на "@permission_classes([AllowAny])

  1. Если вам нужно авторизованное действие, вы можете просто создать токен по имени пользователя и паролю.

Существует множество способов создания токенов, самый популярный из них - simple-jwt.Чтобы узнать больше, перейдите по ссылке: Simple JWT DOCS

Вернуться на верх