Abrufen und Analysieren von HTTP-Antwortcodes
Wenn eine Anwendung auf HTTP- oder HTTPS-Anforderungen antwortet, können Sie die HTTP-Antwortcodes überprüfen, um das Verhalten der Anwendung zu ermitteln.
Voraussetzungen
Das Client-URL-Tool (cURL) oder ein ähnliches Befehlszeilentool.
Das Kubernetes kubectl-Tool oder ein ähnliches Tool zum Herstellen einer Verbindung mit dem Cluster. Um kubectl mithilfe von Azure CLI zu installieren, führen Sie den Befehl "az aks install-cli " aus.
Abrufen von HTTP-Antwortcodes mithilfe von cURL
Das cURL-Befehlszeilentool kann eine HTTP-Anforderung an einen Anwendungsendpunkt senden und die Antwort abrufen. Für einen Lastenausgleichsdienst (der auf den Pfad "/" an Port 80 antwortet), kann eine curl-Anforderung durch Ausführen des folgenden Befehls initiiert werden:
curl -Iv http://<load-balancer-service-ip-address>:80/
Sie können z. B. cURL zusammen mit dem Befehl "kubectl get " wie folgt verwenden:
$ kubectl get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
my-loadbalancer-service LoadBalancer 10.0.81.95 20.62.x.x 80:32131/TCP 18h
$ curl -Iv http://20.62.x.x:80/
* Trying 20.62.x.x:80...
* Connected to 20.62.x.x (20.62.x.x) port 80 (#0)
> HEAD / HTTP/1.1
> Host: 20.62.x.x
> User-Agent: curl/7.79.1
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< ...
...
< Server: Apache/2.4.52 (Unix)
Server: Apache/2.4.52 (Unix)
< ...
...
<
* Connection #0 to host 20.62.x.x left intact
Die Antwort von diesem URI lautet HTTP 200.
Abrufen von HTTP-Antwortcodes mithilfe eines Browsers
Sie können auch die HTTP-Antwort eines HTTP-Endpunkts von einem Browser abrufen. Führen Sie die folgenden Schritte aus:
Drücken Sie in einem Browserfenster STRG+UMSCHALT+I oder F12. Das Fenster oder der Bereich der Entwicklertools wird angezeigt.
Wählen Sie die Registerkarte "Netzwerk " aus, und greifen Sie dann auf den Endpunkt zu. Die Details zur HTTP-Antwort werden im Fenster oder Bereich der Entwicklertools angezeigt.
Um API-Anforderungen an die Anwendung zu stellen und Details über die Antwort abzurufen, können Sie aus vielen anderen Befehlszeilen- und GUI-Tools auswählen. Zu diesen Tools gehören die folgenden.
| Tool | Linkdatenbank |
|---|---|
| Postman | Postman-API-Plattform |
| Wget | MANUELL GEÄNDERTES Wget 1.21.1 |
| PowerShell | Invoke-WebRequest-Cmdlet |
Nachdem der Antwortcode verfügbar ist, sollten Sie versuchen, das Verhalten des Problems besser zu verstehen. Weitere Informationen zu den HTTP-Statuscodes und dem verhalten, das sie angeben, finden Sie im folgenden Inhalt.
| Informationsquelle | Linkdatenbank |
|---|---|
| Internet Assigned Numbers Authority (IANA) | Http-Statuscoderegistrierung (Hypertext Transfer Protocol) |
| Mozilla | HTTP-Antwortstatuscodes |
| Wikipedia | Liste der HTTP-Statuscodes |
Die folgenden HTTP-Statuscodes können auf die aufgeführten Probleme hinweisen.
| HTTP-Statuscode | Problem |
|---|---|
4xx |
Ein Problem wirkt sich auf die Clientanforderung aus. Beispielsweise ist die angeforderte Seite nicht vorhanden, oder der Client verfügt nicht über die Berechtigung, auf die Seite zuzugreifen. OR Zwischen dem Client und dem Server ist ein Netzwerkblocker vorhanden. Beispielsweise wird der Datenverkehr durch eine Netzwerksicherheitsgruppe oder eine Firewall blockiert. |
5xx |
Ein Problem betrifft den Server. Beispielsweise ist die Anwendung ausgefallen, oder ein Gateway funktioniert nicht. |