zoukankan      html  css  js  c++  java
  • 从Header中获得信息

    /// <summary>
    /// 获得header信息
    /// </summary>
    /// <param name="response"></param>
    private void GetHeader(HttpResponseMessage response)
    {
        var headers = response.Headers.ToString().Split(new[] { '
    ', '
    ' }, StringSplitOptions.RemoveEmptyEntries);
        Dictionary<string, string> dictionary = new Dictionary<string, string>();
        foreach (var header in headers)
        {
            //必须规定劈分两个,否则Set-Cookie会遗失数据
            string[] splitStr = header.Split(new char[] { ':' }, 2);
            var name = splitStr[0];
            var value = splitStr[1].Trim();
            dictionary.Add(name, value);
        }
        //HeaderData是自定义类对象,存储header信息
        headerData = new HeaderData();
        var cookiePairs = dictionary["Set-Cookie"];
        headerData.YourKeyword = GetValueByRegex(cookiePairs, "your keyword");
    }
    
    private static string GetValueByRegex(string cookieStr, string pattern)
    {
        Regex regex = new Regex($"{pattern}=(\S+);");
        Match match = regex.Match(cookieStr);
        var pair = match.Groups[0].Value;
        pair = pair.TrimEnd(';');
        string[] keyAndValue = pair.Split('=');
        string value = keyAndValue[1];
        return value;
    }
  • 相关阅读:
    auth
    django缓存机制
    图片防盗链
    用户相关
    验证码
    单个容器部署django (docker + django + uwsgi)
    MySQL性能调优的10个方法
    数据库-外键
    数据库(存储引擎、字段类型、约束条件)
    数据库
  • 原文地址:https://www.cnblogs.com/Lulus/p/8513050.html
Copyright © 2011-2022 走看看