本文整理汇总了C#中IOwinRequest.Set方法的典型用法代码示例。如果您正苦于以下问题:C# IOwinRequest.Set方法的具体用法?C# IOwinRequest.Set怎么用?C# IOwinRequest.Set使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IOwinRequest
的用法示例。
在下文中一共展示了IOwinRequest.Set方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Push
protected override void Push(IOwinRequest request, PushFunc pushPromise, string pushReference)
{
request.Set(CommonOwinKeys.AdditionalInfo, pushReference);
// Copy the headers
var headers = new HeaderDictionary(
new Dictionary<string, string[]>(request.Headers, StringComparer.OrdinalIgnoreCase));
// Populate special HTTP2 headers
headers[CommonHeaders.Method] = request.Method;
// TODO: Not all methods are allowed for push. Don't push, or change to GET?
headers[CommonHeaders.Scheme] = request.Scheme;
headers.Remove("Host");
headers[CommonHeaders.Authority] = request.Headers["Host"];
headers[CommonHeaders.Path] = BingRequestProcessor.GetTileQuadFromSoapUrl(pushReference);
headers.Remove(CommonHeaders.ContentLength); // Push promises cannot emulate requests with bodies.
// TODO: What about cache headers? If-Match, If-None-Match, If-Modified-Since, If-Unmodified-Since.
// If-Match & If-None-Match are multi-value so the client could send e-tags for the primary resource and referenced resources.
// If-Modified-Since and If-Unmodified-Since are single value, so it may not make sense to apply them for secondary resources.
pushPromise(headers);
}