IHttpSysRequestPropertyFeature.TryGetRequestProperty Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Odczytuje dowolną wartość HTTP_REQUEST_PROPERTY z HTTP.SYS przy użyciu interfejsu API Windows HttpQueryRequestProperty.
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
Parametry
- propertyId
- Int32
Identyfikator HTTP_REQUEST_PROPERTY do wykonywania zapytań. Zestaw obsługiwanych wartości jest definiowany przez HTTP_REQUEST_PROPERTY wyliczenie w pliku http.h; obiekt wywołujący jest odpowiedzialny za analizowanie bajtów zwracanych przy output użyciu odpowiedniej natywnej struktury.
- qualifier
- ReadOnlySpan<Byte>
Opcjonalne bajty kwalifikatora specyficzne dla właściwości. Przekaż pusty zakres dla właściwości, które nie wymagają kwalifikatora; Zostanie on zamapowany na wskaźnik o wartości null podczas wywoływania bazowego interfejsu API.
Bufor docelowy, który odbiera wartość właściwości. Przekaż pusty zakres, aby wykonać zapytanie dotyczące wymaganego rozmiaru buforu za pomocą polecenia bytesReturned.
- bytesReturned
- Int32
Zwraca liczbę bajtów zapisanych w obiekcie output.
Jeśli output wartość była zbyt mała (lub pusta), zwraca rozmiar buforu wymaganego do przechowywania wartości.
Zwraca
Wartość True, jeśli właściwość została pomyślnie odczytana w pliku output.
Fałsz, jeśli output nie jest wystarczająco duży, aby pomieścić wartość; w tym przypadku bytesReturned zawiera wymagany rozmiar buforu.
W przypadku dowolnego innego błędu zgłaszany jest wyjątek.
Wyjątki
Każdy błąd HttpSys z wyjątkiem ERROR_INSUFFICIENT_BUFFER lub ERROR_MORE_DATA.
Jeśli zainstalowana Windows interfejs API serwera HTTP nie obsługuje właściwości HttpQueryRequestProperty.
Uwagi
Jeśli wymagany rozmiar buforu nie jest znany z góry, najpierw wywołaj tę metodę z pustym output , aby pobrać wymagany rozmiar w bytesReturnedpliku , a następnie przydziel tę liczbę bajtów i ponów próbę wykonania zapytania.