using System;
using System.Net.Http;
namespace FastGithub.ReverseProxy
{
///
/// SniContext扩展
///
static class SniContextExtensions
{
private static readonly HttpRequestOptionsKey key = new(nameof(SniContext));
///
/// 设置SniContext
///
///
///
public static void SetSniContext(this HttpRequestMessage httpRequestMessage, SniContext context)
{
httpRequestMessage.Options.Set(key, context);
}
///
/// 获取SniContext
///
///
///
public static SniContext GetSniContext(this HttpRequestMessage httpRequestMessage)
{
if (httpRequestMessage.Options.TryGetValue(key, out var value))
{
return value;
}
throw new InvalidOperationException($"请先调用{nameof(SetSniContext)}");
}
}
}