Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ OnHeader() [2/2]

void System.Net.Http.Http2Connection.Http2Stream.OnHeader ( ReadOnlySpan< byte > name,
ReadOnlySpan< byte > value )
inline

Implements System.Net.Http.IHttpHeadersHandler.

Definition at line 904 of file Http2Connection.cs.

905 {
906 if (name[0] == 58)
907 {
908 if (!name.SequenceEqual(StatusHeaderName))
909 {
910 if (System.Net.NetEventSource.Log.IsEnabled())
911 {
912 Trace("Invalid response pseudo-header '" + Encoding.ASCII.GetString(name) + "'.", "OnHeader");
913 }
914 throw new HttpRequestException(System.SR.net_http_invalid_response);
915 }
916 int statusCode = HttpConnectionBase.ParseStatusCode(value);
918 }
919 else
920 {
921 if (!HeaderDescriptor.TryGet(name, out var descriptor))
922 {
923 throw new HttpRequestException(System.SR.Format(System.SR.net_http_invalid_response_header_name, Encoding.ASCII.GetString(name)));
924 }
925 OnHeader(descriptor, value);
926 }
927 }
static ReadOnlySpan< byte > StatusHeaderName
void Trace(string message, [CallerMemberName] string memberName=null)
void OnHeader(HeaderDescriptor descriptor, ReadOnlySpan< byte > value)
static readonly System.Net.NetEventSource Log
static string net_http_invalid_response
Definition SR.cs:92
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string net_http_invalid_response_header_name
Definition SR.cs:118
Definition SR.cs:7
static Encoding ASCII
Definition Encoding.cs:511
static bool TryGet(string headerName, out HeaderDescriptor descriptor)

References System.Text.Encoding.ASCII, System.SR.Format(), System.Net.NetEventSource.Log, System.SR.net_http_invalid_response, System.SR.net_http_invalid_response_header_name, System.Net.Http.Http2Connection.Http2Stream.OnHeader(), System.Net.Http.Http2Connection.Http2Stream.OnStatus(), System.Net.Http.HttpConnectionBase.ParseStatusCode(), System.Net.Http.Http2Connection.Http2Stream.StatusHeaderName, System.Net.Http.Http2Connection.Http2Stream.Trace(), System.Net.Http.Headers.HeaderDescriptor.TryGet(), and System.value.