Logo David Burdelak
Blog

Błąd 401 (Unauthorized) – co oznacza i jak go naprawić?

Błąd 401 (Unauthorized)

Próbujesz pobrać dane z chronionego punktu końcowego API, ale zamiast odpowiedzi otrzymujesz komunikat 401 Unauthorized. Choć nazwa sugeruje brak uprawnień, w rzeczywistości serwer wysyła Ci jasny sygnał: "Nie mam pojęcia, kim jesteś lub Twoje poświadczenia są nieważne". To techniczna bariera, która zmusza dewelopera do zweryfikowania nie tylko poprawności wpisywanych haseł, ale przede wszystkim sposobu, w jaki aplikacja przesyła tokeny i nagłówki uwierzytelniające.

Dlaczego serwer odrzuca Twoją tożsamość?

Błąd 401 występuje w sytuacjach, gdy żądanie HTTP nie zawiera poprawnych danych uwierzytelniających (credentials). Serwer odmawia dostępu do zasobu, dopóki klient nie udowodni swojej tożsamości w sposób, jakiego wymaga dany protokół. Najczęstsze techniczne powody to:

  • Brak nagłówka Authorization: Zapytanie zostało wysłane bez klucza API, tokena Bearer lub danych Basic Auth w nagłówku HTTP.
  • Nieprawidłowe dane logowania: Serwer otrzymał dane, ale nie pasują one do żadnego rekordu. Warto zadbać, by proces ten był bezpieczny i wykorzystywał bCrypt do poprawnej weryfikacji hashy haseł w bazie danych.
  • Wygasły token sesji: Tokeny dostępowe (np. JWT) mają ograniczony czas życia – błąd 401 jest wtedy sygnałem do wywołania mechanizmu odświeżania sesji.

Jak zdiagnozować i wyeliminować błąd 401?

Naprawa tego błędu wymaga precyzyjnego sprawdzenia, co dzieje się na etapie "handshake’u" między klientem a serwerem. Jeśli jesteś deweloperem, Twoim podstawowym narzędziem pracy staje się konsola przeglądarki i zakładka Network.

Skuteczne debugowanie pozwoli Ci sprawdzić, czy nagłówek Authorization jest faktycznie dołączany do żądania i czy nie zawiera literówek (np. w słowie "Bearer"). Pamiętaj również, że błąd 401 różni się od 403 Forbidden – ten pierwszy wymaga uwierzytelnienia (kim jesteś?), a drugi dotyczy autoryzacji (co masz prawo robić?).

Sprawdź najczęściej spotykane błędy HTTP

Błąd 401 to tylko jeden z kodów, z którymi przyjdzie Ci się zmierzyć. Poznaj inne popularne problemy, by lepiej zarządzać komunikacją w swojej aplikacji: