cUrls Option "-u"
Locken docs:
-u, --user <user:password;options>
Specify the user name, password and optional login options to use for server authentication. Overrides -n, --netrc and --netrc-optional.
Was es übersetzt wird, d.h. wie fange ich es auf dem server um den Benutzer zu authentifizieren: sind Sie in GET-oder POST-Parameter?
Die Sprache ist nicht wichtig, die Idee ist wichtig.
InformationsquelleAutor der Frage Alan Coromano | 2013-12-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es hängt alles von der Authentifizierungsmethode aber für die häufigsten - Basic-Auth und Digest Auth, das funktioniert mit ad-hoc - HTTP-Header. Hier ist ein Beispiel mit Basic-Auth:
Dieser führt eine GET-Anforderung mit dem entsprechenden header:
Den
Authorization
header enthält den Authentifizierungs-Daten der server soll analysieren, base64 decode[1] und verwenden. Gleiche Kopf-und Fußzeile festlegen würde, mit einer POST-Anforderung. Können Sie leicht testen Sie es mit einem Dienst wie httpbin(1) (siehe/basic-auth/:user/:passwd
Endpunkt).Digest auth ist etwas komplexer, funktioniert aber mit den HTTP-Headern zu:
401 Unauthorized
einschließlich einerWWW-Authenticate
header mit einer Herausforderung zu lösen,Authorization
header werden analysiert und validiert, die auf der server-Seite.[1]:
base64("john:pwd")
->am9objpwd2Q=
InformationsquelleAutor der Antwort deltheil
Es ist ein einfacher Weg, dies zu tun. Tun es auf diese Weise
curl "http://user:[email protected]"
InformationsquelleAutor der Antwort Aminah Nuraini
In PHP/nginx erhältlich ist Sie in diesem array-element als base64-codierte Zeichenfolge. Es funktioniert sowohl auf GET und POST (curl -X POST ) - Methoden.
Anfrage:
Wert in $_SERVER['HTTP_AUTHORIZATION']:
InformationsquelleAutor der Antwort mixdev