HttpClientOptions Klasse
- java.
lang. Object - com.
azure. core. util. ClientOptions - com.
azure. core. util. HttpClientOptions
- com.
- com.
public final class HttpClientOptions
extends ClientOptions
Allgemeine Konfigurationsoptionen für HttpClient.
HttpClient Implementierungen unterstützen möglicherweise nicht alle Konfigurationsoptionen in dieser Klasse.
Zusammenfassung zum Konstruktor
Konstruktor | Beschreibung |
---|---|
HttpClientOptions() |
Erstellt eine neue Instanz von HttpClientOptions. |
Methodenzusammenfassung
Modifizierer und Typ | Methode und Beschreibung |
---|---|
Configuration |
getConfiguration()
Ruft den Konfigurationsspeicher ab, den der HttpClient verwendet. |
Duration |
getConnectTimeout()
Ruft das Verbindungstimeout für eine zu sendende Anforderung ab. |
Duration |
getConnectionIdleTimeout()
Ruft die Dauer ab, bis eine Verbindung im Leerlauf geschlossen wird. |
Class<> |
getHttpClientProvider()
Ruft den Typ der Implementierung ab, die HttpClientProvider zum Erstellen einer instance von HttpClientverwendet werden soll. |
Integer |
getMaximumConnectionPoolSize()
Ruft die maximale Größe des Verbindungspools ab, die vom zugrunde liegenden HTTP-Client verwendet wird. |
Proxy |
getProxyOptions()
Ruft die ProxyOptions ab, die von HttpClient verwendet wird. |
Duration |
getReadTimeout()
Ruft die Lesetimeoutdauer ab, die beim Lesen der Serverantwort verwendet wird. |
Duration |
getResponseTimeout()
Ruft die Dauer des Antworttimeouts ab, die beim Warten auf die Antwort eines Servers verwendet wird. |
Duration |
getWriteTimeout()
Ruft das Schreibtimeout für eine zu sendende Anforderung ab. |
Http |
readTimeout(Duration readTimeout)
Legt die Dauer des Lesetimeouts fest, die beim Lesen der Serverantwort verwendet wird. |
Http |
responseTimeout(Duration responseTimeout)
Legt die Dauer des Antworttimeouts fest, die beim Warten auf die Antwort eines Servers verwendet wird. |
Http |
setApplicationId(String applicationId)
Legt die Anwendungs-ID fest. |
Http |
setConfiguration(Configuration configuration)
Legt den Konfigurationsspeicher fest, der verwendet HttpClient wird. |
Http |
setConnectTimeout(Duration connectTimeout)
Legt das Verbindungstimeout für eine Anforderung fest, die gesendet werden soll. |
Http |
setConnectionIdleTimeout(Duration connectionIdleTimeout)
Legt die Dauer vor einer Verbindung im Leerlauf fest. |
Http |
setHeaders(Iterable<Header> headers)
Legt Header fest. |
Http |
setHttpClientProvider(Class<? extends HttpClientProvider> httpClientProvider)
Legt den Typ der Implementierung fest, die HttpClientProvider zum Erstellen einer instance von HttpClientverwendet werden soll. |
Http |
setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)
Legt die maximale Größe des Verbindungspools fest, die vom zugrunde liegenden HTTP-Client verwendet wird. |
Http |
setProxyOptions(ProxyOptions proxyOptions)
Legt die ProxyOptions fest, die verwendet HttpClient wird. |
Http |
setReadTimeout(Duration readTimeout)
Legt die Dauer des Lesetimeouts fest, die beim Lesen der Serverantwort verwendet wird. |
Http |
setResponseTimeout(Duration responseTimeout)
Legt die Dauer des Antworttimeouts fest, die beim Warten auf die Antwort eines Servers verwendet wird. |
Http |
setWriteTimeout(Duration writeTimeout)
Legt das Schreibtimeout für eine anforderung fest, die gesendet werden soll. |
Geerbte Methoden von ClientOptions
Geerbte Methoden von java.lang.Object
Details zum Konstruktor
HttpClientOptions
public HttpClientOptions()
Erstellt eine neue Instanz von HttpClientOptions.
Details zur Methode
getConfiguration
public Configuration getConfiguration()
Ruft den Konfigurationsspeicher ab, den der HttpClient verwendet.
Returns:
getConnectTimeout
public Duration getConnectTimeout()
Ruft das Verbindungstimeout für eine zu sendende Anforderung ab.
Das Standardmäßige Verbindungstimeout beträgt 10 Sekunden.
Returns:
getConnectionIdleTimeout
public Duration getConnectionIdleTimeout()
Ruft die Dauer ab, bis eine Verbindung im Leerlauf geschlossen wird.
Das Standardzeitlimit für den Leerlauf der Verbindung beträgt 60 Sekunden.
Returns:
getHttpClientProvider
public Class getHttpClientProvider()
Ruft den Typ der Implementierung ab, die HttpClientProvider zum Erstellen einer instance von HttpClientverwendet werden soll.
Returns:
getMaximumConnectionPoolSize
public Integer getMaximumConnectionPoolSize()
Ruft die maximale Größe des Verbindungspools ab, die vom zugrunde liegenden HTTP-Client verwendet wird.
Das Ändern der maximalen Größe des Verbindungspools kann Auswirkungen auf die Leistung einer Anwendung haben. Das Erhöhen des maximalen Verbindungspools führt dazu, dass mehr Verbindungen für eine Anwendung verfügbar sind, aber möglicherweise zu mehr Konflikten mit Netzwerkressourcen führen. Es wird empfohlen, Leistungsanalysen für verschiedene maximale Verbindungspoolgrößen durchzuführen, um die richtige Konfiguration für eine Anwendung zu finden.
Bei dieser maximalen Größe des Verbindungspools handelt es sich nicht um eine globale Konfiguration, sondern um eine Konfiguration auf instance Ebene für jedeHttpClient, die mit diesem HttpClientOptionserstellt wird.
Die maximale Standardgröße des Verbindungspools wird vom zugrunde liegenden HTTP-Client bestimmt. Wenn Sie die maximale Größe des Verbindungspools auf NULL festlegen, wird die Konfiguration zurückgesetzt, um den vom zugrunde liegenden HTTP-Client festgelegten Standardwert zu verwenden.
Returns:
getProxyOptions
public ProxyOptions getProxyOptions()
Ruft die ProxyOptions ab, die von HttpClient verwendet wird.
Returns:
getReadTimeout
public Duration getReadTimeout()
Ruft die Lesetimeoutdauer ab, die beim Lesen der Serverantwort verwendet wird.
Das Standardmäßige Lesetimeout beträgt 60 Sekunden.
Returns:
getResponseTimeout
public Duration getResponseTimeout()
Ruft die Dauer des Antworttimeouts ab, die beim Warten auf die Antwort eines Servers verwendet wird.
Das Standardmäßige Antworttimeout beträgt 60 Sekunden.
Returns:
getWriteTimeout
public Duration getWriteTimeout()
Ruft das Schreibtimeout für eine zu sendende Anforderung ab.
Das Standardmäßige Schreibtimeout beträgt 60 Sekunden.
Returns:
readTimeout
public HttpClientOptions readTimeout(Duration readTimeout)
Legt die Dauer des Lesetimeouts fest, die beim Lesen der Serverantwort verwendet wird.
Das Lesetimeout beginnt, sobald der erste Antwortlesevorgang ausgelöst wird, nachdem die Serverantwort empfangen wurde. Dieses Timeout wird regelmäßig ausgelöst, wird aber nicht ausgelöst, wenn ein anderer Lesevorgang zwischen dem Auslösen und Abschließen des Timeouts abgeschlossen wurde.
Wenn readTimeout
null PROPERTY_AZURE_REQUEST_READ_TIMEOUT ist oder ein Timeout von 60 Sekunden verwendet wird, wird kein Timeout auf das Lesen der Antwort angewendet, wenn es kleiner Duration als oder gleich 0 ist. Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von readTimeout
verwendet.
Das Standardmäßige Lesetimeout beträgt 60 Sekunden.
Parameters:
Returns:
responseTimeout
public HttpClientOptions responseTimeout(Duration responseTimeout)
Legt die Dauer des Antworttimeouts fest, die beim Warten auf die Antwort eines Servers verwendet wird.
Das Antworttimeout beginnt nach Abschluss des Anforderungsschreibvorgangs und endet, sobald der erste Antwortlesevorgang ausgelöst wird, wenn die Serverantwort empfangen wird.
Wenn responseTimeout
null PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT ist oder ein Timeout von 60 Sekunden verwendet wird, wird kein Timeout auf die Antwort angewendet, wenn es kleiner Duration als oder gleich 0 ist. Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von responseTimeout
verwendet.
Das Standardmäßige Antworttimeout beträgt 60 Sekunden.
Parameters:
Returns:
setApplicationId
public HttpClientOptions setApplicationId(String applicationId)
Legt die Anwendungs-ID fest.
Dient applicationId
zum Konfigurieren UserAgentPolicy für Telemetrie-/Überwachungszwecke.
Weitere Informationen finden Sie unter Azure Core: Telemetrierichtlinie .
Codebeispiele
Erstellen von ClientOptions mit der Anwendungs-ID "myApplicationId"
ClientOptions clientOptions = new ClientOptions()
.setApplicationId("myApplicationId");
Overrides:
HttpClientOptions.setApplicationId(String applicationId)Parameters:
setConfiguration
public HttpClientOptions setConfiguration(Configuration configuration)
Legt den Konfigurationsspeicher fest, der verwendet HttpClient wird.
Parameters:
Returns:
setConnectTimeout
public HttpClientOptions setConnectTimeout(Duration connectTimeout)
Legt das Verbindungstimeout für eine Anforderung fest, die gesendet werden soll.
Das Verbindungstimeout beginnt, sobald die Anforderung versucht, eine Verbindung mit dem Remotehost herzustellen, und wird beendet, wenn die Verbindung aufgelöst wurde.
Wenn connectTimeout
null PROPERTY_AZURE_REQUEST_CONNECT_TIMEOUT ist oder ein Timeout von 10 Sekunden verwendet wird, wird kein Timeout angewendet, wenn es kleiner als oder gleich 0 ist Duration . Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von connectTimeout
verwendet.
Das Standardmäßige Verbindungstimeout beträgt 10 Sekunden.
Parameters:
Returns:
setConnectionIdleTimeout
public HttpClientOptions setConnectionIdleTimeout(Duration connectionIdleTimeout)
Legt die Dauer vor einer Verbindung im Leerlauf fest.
Das Leerlauftimeout der Verbindung beginnt, nachdem die Verbindung ihre letzte Netzwerkanforderung abgeschlossen hat. Bei jeder Verwendung der Verbindung wird das Leerlauftimeout zurückgesetzt.
Wenn connectionIdleTimeout
null ist, wird ein Timeout von 60 Sekunden verwendet, wenn es kleiner Duration als oder gleich Null ist, wird kein Timeoutzeitraum angewendet. Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von connectionIdleTimeout
verwendet.
Das Standardzeitlimit für den Leerlauf der Verbindung beträgt 60 Sekunden.
Parameters:
Returns:
setHeaders
public HttpClientOptions setHeaders(Iterable
Legt Header fest.
Die übergebenen Header werden auf jede Anforderung angewendet, die mit dem Client gesendet wird.
Dadurch werden alle zuvor festgelegten Header überschrieben.
Codebeispiele
Erstellen von ClientOptions mit dem Header "myCustomHeader":"myStaticValue"
ClientOptions clientOptions = new ClientOptions()
.setHeaders(Collections.singletonList(new Header("myCustomHeader", "myStaticValue")));
Overrides:
HttpClientOptions.setHeaders(Iterable<Header> headers)Parameters:
setHttpClientProvider
public HttpClientOptions setHttpClientProvider(Class httpClientProvider)
Legt den Typ der Implementierung fest, die HttpClientProvider zum Erstellen einer instance von HttpClientverwendet werden soll. Wenn der Wert nicht festgelegt ist oder eine leere Zeichenfolge ist, wird die erste HttpClientProvider Auflösung von ServiceLoader verwendet, um eine instance von HttpClientzu erstellen. Wenn der Wert festgelegt ist und keiner von ServiceLoaderIllegalStateException aufgelösten Lösung entsprichtHttpClientProvider, wird beim Versuch, eine instance von HttpClientzu erstellen, ausgelöst.
Parameters:
Returns:
setMaximumConnectionPoolSize
public HttpClientOptions setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)
Legt die maximale Größe des Verbindungspools fest, die vom zugrunde liegenden HTTP-Client verwendet wird.
Das Ändern der maximalen Größe des Verbindungspools kann Auswirkungen auf die Leistung einer Anwendung haben. Das Erhöhen des maximalen Verbindungspools führt dazu, dass mehr Verbindungen für eine Anwendung verfügbar sind, aber möglicherweise zu mehr Konflikten mit Netzwerkressourcen führen. Es wird empfohlen, Leistungsanalysen für verschiedene maximale Verbindungspoolgrößen durchzuführen, um die richtige Konfiguration für eine Anwendung zu finden.
Bei dieser maximalen Größe des Verbindungspools handelt es sich nicht um eine globale Konfiguration, sondern um eine Konfiguration auf instance Ebene für jedeHttpClient, die mit diesem HttpClientOptionserstellt wird.
Die maximale Standardgröße des Verbindungspools wird vom zugrunde liegenden HTTP-Client bestimmt. Wenn Sie die maximale Größe des Verbindungspools auf NULL festlegen, wird die Konfiguration zurückgesetzt, um den vom zugrunde liegenden HTTP-Client festgelegten Standardwert zu verwenden.
Parameters:
Returns:
setProxyOptions
public HttpClientOptions setProxyOptions(ProxyOptions proxyOptions)
Legt die ProxyOptions fest, die verwendet HttpClient wird.
Parameters:
Returns:
setReadTimeout
public HttpClientOptions setReadTimeout(Duration readTimeout)
Legt die Dauer des Lesetimeouts fest, die beim Lesen der Serverantwort verwendet wird.
Das Lesetimeout beginnt, sobald der erste Antwortlesevorgang ausgelöst wird, nachdem die Serverantwort empfangen wurde. Dieses Timeout wird regelmäßig ausgelöst, wird aber nicht ausgelöst, wenn ein anderer Lesevorgang zwischen dem Auslösen und Abschließen des Timeouts abgeschlossen wurde.
Wenn readTimeout
null PROPERTY_AZURE_REQUEST_READ_TIMEOUT ist oder ein Timeout von 60 Sekunden verwendet wird, wird kein Timeout auf das Lesen der Antwort angewendet, wenn es kleiner Duration als oder gleich 0 ist. Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von readTimeout
verwendet.
Das Standardmäßige Lesetimeout beträgt 60 Sekunden.
Parameters:
Returns:
setResponseTimeout
public HttpClientOptions setResponseTimeout(Duration responseTimeout)
Legt die Dauer des Antworttimeouts fest, die beim Warten auf die Antwort eines Servers verwendet wird.
Das Antworttimeout beginnt nach Abschluss des Anforderungsschreibvorgangs und endet, sobald der erste Antwortlesevorgang ausgelöst wird, wenn die Serverantwort empfangen wird.
Wenn responseTimeout
null PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT ist oder ein Timeout von 60 Sekunden verwendet wird, wird kein Timeout auf die Antwort angewendet, wenn es kleiner Duration als oder gleich 0 ist. Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von responseTimeout
verwendet.
Das Standardmäßige Antworttimeout beträgt 60 Sekunden.
Parameters:
Returns:
setWriteTimeout
public HttpClientOptions setWriteTimeout(Duration writeTimeout)
Legt das Schreibtimeout für eine anforderung fest, die gesendet werden soll.
Das Schreibtimeout gilt nicht für die gesamte Anforderung, sondern für jede Emission, die über das Kabel gesendet wird. Beispielsweise löst ein Anforderungstext 10
8KB
, der Puffer ausgibt, Schreibvorgänge aus 10
. Der ausgehende Puffer wird in regelmäßigen Abständen überprüft, um festzustellen, ob er weiterhin entladen wird.
Wenn writeTimeout
null PROPERTY_AZURE_REQUEST_WRITE_TIMEOUT ist oder ein Timeout von 60 Sekunden verwendet wird, wird kein Schreibtimeout angewendet, wenn es kleiner als oder gleich Null ist Duration . Beim Anwenden des Timeouts wird der größte Von einer Millisekunde und der Wert von writeTimeout
verwendet.
Das Standardmäßige Schreibtimeout beträgt 60 Sekunden.
Parameters:
Returns:
Gilt für:
Azure SDK for Java