Der User-Agent
Lektion 44 von 47 im Kurs Netzwerken mit dem Terminal von Coddy.
Jede Anfrage gibt im Header User-Agent bekannt, wodurch sie erstellt wurde. curl sendet seinen eigenen Namen und seine Version; ein Browser sendet eine lange historische Zeichenfolge.
Das ist wichtiger, als es scheint. Server verhalten sich routinemäßig abhängig davon unterschiedlich: Sie liefern ein mobiles Layout aus, blockieren unbekannte Clients oder lehnen alles ab, was automatisiert wirkt. „Es funktioniert in meinem Browser, aber nicht in curl“ liegt daher oft genau an diesem Header und an nichts Tieferliegendem.
curl -s -A 'my-monitor/1.0' http://127.0.0.1:9133/-A legt ihn fest und ist einfach eine Kurzform für -H 'User-Agent: ...'.
Wenn du automatisierte Anfragen an einen Dienst sendest, ist es ein Zeichen guter Umgangsformen, einen ehrlichen User-Agent festzulegen, der dein Tool nennt: Wenn dein Datenverkehr ein Problem verursacht, kann die jeweils zuständige Person erkennen, worum es sich handelt und wen sie fragen sollte.
Aufgabe
SchwerStelle dich ehrlich vor.
- Starte den Mitschneide-Listener auf Port 9133
- Sende eine Anfrage, die sich als
my-monitor/1.0identifiziert - Gib die User-Agent-Zeile aus
req.txtaus
Erwartete Ausgabe:
User-Agent: my-monitor/1.0Probier es selbst
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Netzwerken mit dem Terminal
2Namen und DNS
Warum Namen existierenDie Hosts-DateiEinen Namen nachschlagenRecord-TypenRückblick: Namen6curl im Detail
Header anzeigenAntworten speichernBenutzerdefinierte HeaderStatus und Zeitmessungcurl-Exit-CodesRückblick: curl-Flags9Authentifizierung und Debugging
API-Schlüssel und BearerDer User-AgentTimeouts und WiederholungenEinen Fehler lesenRückblick: DebuggingÜbe selbstständig: Terminal-Playground