-
-
Konfigurieren der Anwendungsauthentifizierung, Autorisierung und Überwachung
-
-
Aufrufen einer HTTP-Callout
-
Anwendungsfall: ESI-Unterstützung für dynamisches Abrufen und Aktualisieren von Inhalten
-
-
Konfigurieren von erweiterten Richtlinienausdrücken: Erste Schritte
-
Erweiterte Richtlinienausdrücke: Arbeiten mit Datumsangaben, Zeiten und Zahlen
-
Erweiterte Richtlinienausdrücke: Analysieren von HTTP-, TCP- und UDP-Daten
-
Ausdrücke zur Identifizierung des Protokolls in einem eingehenden IP-Paket
-
Ausdrücke für HTTP-Statuscodes und numerische HTTP-Nutzlastdaten außer Datumsangaben
-
Operationen für HTTP-, HTML- und XML-Codierung und „Sichere“ Zeichen
-
Ausdrücke zum Auswerten einer DNS-Nachricht und zur Identifizierung ihres Carrier-Protokolls
-
Erweiterte Richtlinienausdrücke: Analysieren von SSL-Zertifikaten
-
Erweiterte Richtlinienausdrücke: IP- und MAC-Adressen, Durchsatz, VLAN-IDs
-
Erweiterte Richtlinienausdrücke: Stream-Analytics-Funktionen
-
Zusammenfassende Beispiele für erweiterte Richtlinienausdrücke
-
-
-
-
Verhalten des Content-Length-Headers in einer Rewrite-Richtlinie
-
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
Aufrufen einer HTTP-Callout
Nachdem Sie ein HTTP-Callout konfiguriert haben, rufen Sie das Callout auf, indem Sie den Ausdruck SYS.HTTP_CALLOUT(<name>)
in eine erweiterte Richtlinienregel einschließen. In diesem Ausdruck ist <name>
der Name des HTTP-Callouts, den Sie aufrufen möchten.
Sie können erweiterte Richtlinienausdruck-Operatoren mit dem Callout-Ausdruck verwenden, um die Antwort zu verarbeiten und dann eine entsprechende Aktion durchzuführen. Der Rückgabetyp der Antwort des HTTP-Callout-Agenten bestimmt den Satz von Operatoren, die Sie für die Antwort verwenden können. Wenn der Teil der Antwort, den Sie analysieren möchten, Text ist, können Sie einen Textoperator verwenden, um die Antwort zu analysieren. Sie können beispielsweise den <string> Operator CONTAINS () verwenden, um zu überprüfen, ob der angegebene Teil der Antwort eine bestimmte Zeichenfolge enthält, wie im folgenden Beispiel:
SYS.HTTP_CALLOUT(mycallout).contains("Good IP address")
<!--NeedCopy-->
Wenn Sie den vorhergehenden Ausdruck in einer Responder Policy verwenden, können Sie eine entsprechende Responder Action konfigurieren.
Wenn der Teil der Antwort, den Sie auswerten möchten, eine Zahl ist, können Sie einen numerischen Operator wie GT (int) verwenden. Wenn die Antwort einen booleschen Wert enthält, können Sie einen booleschen Operator verwenden.
Hinweis: Ein HTTP-Callout kann sich rekursiv aufrufen. Die Rekursion von HTTP-Callouts kann vermieden werden, indem der HTTP-Callout-Ausdruck mit einem erweiterten Richtlinienausdruck kombiniert wird, der eine Rekursion verhindert. Informationen darüber, wie Sie die Rekursion von HTTP-Callouts vermeiden können, finden Sie unter Vermeiden von HTTP-Callout-Rekursion.
Sie können HTTP-Callouts auch kaskadieren, indem Sie Richtlinien konfigurieren, die jeweils ein Callout aufrufen, nachdem zuvor generierte Callouts ausgewertet wurden. In diesem Szenario kann ein zweiter Satz von Richtlinien nach dem Aufrufen eines Callouts, wenn die NetScaler-Appliance das Callout analysiert, bevor das Callout an den Callout-Server gesendet wird, das Callout auswerten und zusätzliche Callouts aufrufen, die wiederum durch einen dritten Satz von Richtlinien usw. ausgewertet werden können. Eine solche Implementierung wird im folgenden Beispiel beschrieben.
Zuerst können Sie einen HTTP-Callout namens myCallout1 konfigurieren und dann eine Responder Policy, Pol1, konfigurieren, um myCallout1 aufzurufen. Dann könnten Sie ein zweites HTTP-Callout, myCallout2, und eine Responder Policy, Pol2, konfigurieren. Sie konfigurieren Pol2, um myCallout1 auszuwerten und myCallout2 aufzurufen. Sie binden beide Responder-Richtlinien global.
Um eine Rekursion von HTTP-Callouts zu vermeiden, ist myCallout1 mit einem eindeutigen benutzerdefinierten HTTP-Header namens “Request1” konfiguriert. Pol1 ist so konfiguriert, dass die Rekursion von HTTP-Callouts mithilfe des erweiterten Richtlinienausdrucks vermieden wird.
HTTP.REQ.HEADER("Request1").EQ("Callout Request").NOT.
<!--NeedCopy-->
Pol2 verwendet denselben erweiterten Richtlinienausdruck, schließt jedoch den Operator.NOT aus, sodass die Richtlinie myCallout1 auswertet, wenn die NetScaler-Appliance ihn analysiert. Beachten Sie, dass myCallout2 seinen eigenen eindeutigen Header namens “Request2” identifiziert und Pol2 einen erweiterten Richtlinienausdruck enthält, um zu verhindern, dass myCallout2 sich rekursiv aufruft.
Beispiel:
> add policy httpCallout myCallout1
Done
> set policy httpCallout myCallout1 -IPAddress 10.102.3.95 -port 80 -returnType TEXT -hostExpr
""10.102.3.95"" -urlStemExpr ""/cgi-bin/check_clnt_from_database.pl"" -headers Request1
("Callout Request") -parameters cip(CLIENT.IP.SRC) -resultExpr "HTTP.RES.BODY(100)"
Done
> add responder policy Pol1 "HTTP.REQ.HEADER("Request1").EQ("Callout Request").NOT &&
SYS.HTTP_CALLOUT(myCallout1).CONTAINS("IP Matched")" RESET
Done
> bind responder global Pol1 100 END -type OVERRIDE
Done
> add policy httpCallout myCallout2
Done
> set policy httpCallout myCallout2 -IPAddress 10.102.3.96 -port 80 -returnType TEXT -hostExpr
""10.102.3.96"" -urlStemExpr ""/cgi-bin/check_clnt_location_from_database.pl"" -headers Request2
("Callout Request") -parameters cip(CLIENT.IP.SRC) -resultExpr "HTTP.RES.BODY(200)"
Done
> add responder policy Pol2 "HTTP.REQ.HEADER("Request2").EQ("Callout Request").NOT &&
HTTP.REQ.HEADER("Request1").EQ("Callout Request") && SYS.HTTP_CALLOUT(myCallout2).CONTAINS
("APAC")" RESET
Done
> bind responder global Pol2 110 END -type OVERRIDE
Done
<!--NeedCopy-->
Teilen
Teilen
In diesem Artikel
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.