IHttpSysRequestPropertyFeature.TryGetRequestProperty 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
HttpQueryRequestProperty Windows API를 사용하여 HTTP.SYS 임의의 HTTP_REQUEST_PROPERTY 값을 읽습니다.
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
매개 변수
- propertyId
- Int32
쿼리할 HTTP_REQUEST_PROPERTY 식별자입니다. 지원되는 값 집합은 열거형에 http.h의해 HTTP_REQUEST_PROPERTY 정의됩니다. 호출자는 해당 네이티브 구조체를 사용하여 반환 output 된 바이트를 구문 분석합니다.
- qualifier
- ReadOnlySpan<Byte>
선택적 속성별 한정자 바이트입니다. 한정자가 필요하지 않은 속성에 대해 빈 범위를 전달합니다. 기본 API를 호출할 때 null 포인터에 매핑됩니다.
- bytesReturned
- Int32
에 기록된 바이트 수를 반환합니다 output.
너무 작거나 비어 있는 경우 output 값을 보유하는 데 필요한 버퍼의 크기를 반환합니다.
반품
속성이 성공적으로 읽혀진 경우 True입니다 output.
값을 보유할 만큼 충분히 크지 않은 경우 output False입니다. 이 경우 bytesReturned 필요한 버퍼 크기가 포함됩니다.
다른 오류의 경우 예외가 throw됩니다.
예외
ERROR_INSUFFICIENT_BUFFER 또는 ERROR_MORE_DATA 제외한 모든 HttpSys 오류입니다.
설치된 Windows HTTP Server API가 HttpQueryRequestProperty를 지원하지 않는 경우
설명
필요한 버퍼 크기를 미리 알 수 없는 경우 먼저 빈 output 메서드를 호출하여 필요한 크기를 bytesReturned검색한 다음, 많은 바이트를 할당하고 쿼리를 다시 시도합니다.