Sobes.tech
Junior — Middle

Gdzie dokładnie w żądaniu HTTP należy podać dane uwierzytelniające, takie jak login i hasło?

sobes.tech AI

Odpowiedź od AI

Dane uwierzytelniające, takie jak login i hasło, są zwykle przesyłane w nagłówku Authorization żądania HTTP. Najczęstszym sposobem jest użycie schematu Basic Authentication, gdzie login i hasło są kodowane w Base64 i przesyłane w nagłówku:

Authorization: Basic base64(login:password)

Na przykład, jeśli login to user, a hasło pass, to ciąg do zakodowania to user:pass.

Przykład na Androidzie z użyciem HttpURLConnection:

String credentials = "user:pass";
String auth = "Basic " + Base64.encodeToString(credentials.getBytes(), Base64.NO_WRAP);
connection.setRequestProperty("Authorization", auth);

Przesyłanie loginu i hasła w ciele żądania lub w URL (np. w parametrach GET) nie jest zalecane ze względów bezpieczeństwa.