/// <summary> /// 获取海康加密的headers /// </summary> /// <param name="headers"></param> /// <param name="method"></param> /// <returns></returns> private static Dictionary <string, string> GetHikSecurityHeaders(HttpRequestHeaders headers, string method, string url, Dictionary <string, string> formData) { method = method.ToUpperInvariant(); Dictionary <string, string> dic = new Dictionary <string, string> { { "method", method } }; if (headers.Contains("accept")) { dic.Add("accept", headers.GetValues("accept-header")?.FirstOrDefault()?.Trim() ?? ""); } if (headers.Any(o => o.Key.ToLower().Equals("content-type"))) { dic.Add("content-type", headers.GetValues("content-type")?.FirstOrDefault()?.Trim() ?? ""); } if (headers.Any(o => o.Key.ToLower().Equals("date"))) { dic.Add("date", headers.GetValues("date")?.FirstOrDefault()?.Trim() ?? ""); } if (headers.Any(o => o.Key.ToLower().Equals("headers"))) { dic.Add("headers", headers.GetValues("headers")?.FirstOrDefault()?.Trim() ?? ""); } dic.Add("url", BuildResource(url, headers, formData)); return(dic); }
protected string GetHeader(HttpRequestHeaders headers, string key) { var header = headers.FirstOrDefault(a => a.Key.ToLower().Equals(key.ToLower())); if (headers == null || !headers.Any() || header.Key == null || string.IsNullOrEmpty(header.Value.FirstOrDefault())) { throw new LoginFaildException("请求的Header中必须要有AppId和Secrect信息!"); } return(header.Value.FirstOrDefault()); }
/// <summary> /// Adds the specified header and its value into the <see cref="HttpHeaders"/> collection. /// </summary> /// <param name="headers">This <see cref="HttpRequestHeaders"/> instance.</param> /// <param name="name">The header to add to the collection.</param> /// <param name="value">The content of the header.</param> public static void AddIfNotExists(this HttpRequestHeaders headers, string name, string value) { // constants const StringComparison Compare = StringComparison.OrdinalIgnoreCase; // find var isExists = headers.Any(i => i.Key.Equals(name, Compare) && i.Value.Contains(value)); // exit conditions if (isExists) { return; } headers.TryAddWithoutValidation(name, value); }
public bool ContainsPrefix(string prefix) { var contains = _headers.Any(h => h.Key.Contains(HeaderPrefix + prefix)); return(contains); }
public bool ContainsPrefix(string prefix) { return(_headers.Any(header => header.Key.Contains(XHeaderPrefix + prefix))); }
public bool ContainsPrefix(string prefix) { return(headers.Any(h => predicate(h, prefix))); }
private bool Header(HttpRequestHeaders headers, string name, string value) { return(headers.Any(h => h.Key == name && h.Value.First() == value)); }