Учетные данные для аутентификации не были предоставлены - Django REST

Я делаю приложение для IOS с бэкендом Django, оно работало хорошо, но теперь я получаю ошибку {"detail":"Authentication credentials were not provided."}

Django Backend

settings.py

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.TokenAuthentication',
    ),
    'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticated'
    ),
}

views.py

class ColorTagViewSet(viewsets.ModelViewSet):
    queryset = ColorTag.objects.all()
    serializer_class = ColorTagSerializer
    permission_classes = (IsAuthenticated,)
    authentication_classes = (TokenAuthentication,)

urls.py (в моем приложении)

router = routers.DefaultRouter()
router.register(r'colortag', views.ColorTagViewSet)

urlpatterns = [
    path('', include(router.urls)),
    path('auth/get-token', rest_views.obtain_auth_token),
]

Тестирование приложения IOS

ViewController.swift

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        
        print("requesting")
        
        guard let url = URL(string: "http://192.168.0.171:8000/api/v1/colortag") else {
            print("URL Error")
            return
        }
        
        let token = "6a02d8d41a8cf143522a587bcee4be2c8b7d75e5"
        
        var request = URLRequest(url: url)
        request.httpMethod = "GET"
        request.addValue("application/json", forHTTPHeaderField: "Accept")
        request.addValue("Token \(token)", forHTTPHeaderField: "Authorization")
        
        URLSession.shared.dataTask(with: request) { data, response, error in
            print(String(data: data!, encoding: .utf8))
        }.resume()
    }
}

Я также пробовал использовать базовый аутентификатор, но это тоже не сработало. обычно я не спрашиваю людей на Stackoverflow (или любых других форумах, достаточно google), но я понятия не имею, что делать.

Может ли кто-нибудь сказать мне, какова возможная причина возникновения этой ошибки?

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