PHP:
Skicka en HTTP-förfrågan med Basic-autentisering
Hur man gör:
Skicka en HTTP-begäran med curl
i PHP. Här använder vi CURLOPT_USERPWD
för att lägga till autentiseringsuppgifterna.
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://exempel.se/data");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "anvandare:losenord");
$response = curl_exec($curl);
if(!$response) {
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
}
curl_close($curl);
echo $response;
?>
Om servern accepterar dina autentiseringsuppgifter, får du svaret tillbaka. Felaktiga uppgifter ger oftast ett 401 Unauthorized-svar.
Fördjupning:
Grundläggande autentisering har använts sedan början av webben och är en del av HTTP-protokollet. Det är enkelt men inte det säkraste alternativet, eftersom användarnamn och lösenord skickas i klartext (base64-kodat men enkelt att dekoda). HTTPS bör användas för att kryptera informationen under överföringen.
Andra alternativ inkluderar OAuth och token-baserade autentiseringssystem som erbjuder större säkerhet. Grundläggande autentisering används dock fortfarande för dess enkelhet, särskilt för interna server-till-server-kommunikationer eller där hög säkerhet inte är en prioritet.
Implementeringsdetaljer varierar beroende på vilken HTTP-klient du använder. curl
är standard i PHP och erbjuder omfattande funktionalitet för att hantera HTTP-förfrågningar och autentisering.