Sprache

IHttpSysRequestPropertyFeature.TryGetRequestProperty Methode

Definition

Liest einen beliebigen HTTP_REQUEST_PROPERTY Wert aus HTTP.SYS mithilfe der HttpQueryRequestProperty-Windows-API.

public virtual bool TryGetRequestProperty(int propertyId, ReadOnlySpan<byte> qualifier, Span<byte> output, out int bytesReturned);
abstract member TryGetRequestProperty : int * ReadOnlySpan<byte> * Span<byte> * int -> bool
override this.TryGetRequestProperty : int * ReadOnlySpan<byte> * Span<byte> * int -> bool
Public Overridable Function TryGetRequestProperty (propertyId As Integer, qualifier As ReadOnlySpan(Of Byte), output As Span(Of Byte), ByRef bytesReturned As Integer) As Boolean

Parameter

propertyId
Int32

Der zu abfragende bezeichner HTTP_REQUEST_PROPERTY. Der Satz unterstützter Werte wird durch die HTTP_REQUEST_PROPERTY Enumeration in http.hdefiniert; der Aufrufer ist für die Analyse der in der entsprechenden systemeigenen Struktur zurückgegebenen output Bytes verantwortlich.

qualifier
ReadOnlySpan<Byte>

Optionale eigenschaftsspezifische Qualifiziererbytes. Übergeben Sie eine leere Spanne für Eigenschaften, für die kein Qualifizierer erforderlich ist; sie wird beim Aufrufen der zugrunde liegenden API einem NULL-Zeiger zugeordnet.

output
Span<Byte>

Zielpuffer, der den Eigenschaftswert empfängt. Übergeben Sie eine leere Spanne, um die erforderliche Puffergröße abzufragen.bytesReturned

bytesReturned
Int32

Gibt die Anzahl der Bytes zurück, die in output. Wenn output sie zu klein (oder leer) war, wird die Größe des Puffers zurückgegeben, der zum Speichern des Werts erforderlich ist.

Gibt zurück

True, wenn die Eigenschaft erfolgreich gelesen outputwurde. False, wenn output nicht groß genug ist, um den Wert zu halten; in diesem Fall bytesReturned enthält die erforderliche Puffergröße. Bei einem anderen Fehler wird eine Ausnahme ausgelöst.

Ausnahmen

Jeder HttpSys-Fehler mit Ausnahme von ERROR_INSUFFICIENT_BUFFER oder ERROR_MORE_DATA.

Wenn die installierte Windows HTTP-Server-API httpQueryRequestProperty nicht unterstützt.

Hinweise

Wenn die erforderliche Puffergröße im Vorfeld nicht bekannt ist, rufen Sie diese Methode zuerst mit einer leeren output Aufschrift auf, um die erforderliche Größe bytesReturnedabzurufen, und weisen Sie dann die anzahl Bytes zu, und wiederholen Sie die Abfrage.

Gilt für: