/// <summary>
/// 获得header信息
/// </summary>
/// <param name="response"></param>
private void GetHeader(HttpResponseMessage response)
{
var headers = response.Headers.ToString().Split(new[] { '\n', '\r' }, 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;
}

最新文章

  1. 【相当实用】如何让TortoiseSVN导出新增或修改过的文件
  2. 【Python】:简单爬虫作业
  3. C# HttpHelper 采集
  4. windows server 2003下安装.net framework 3.5 一直安装不成功
  5. 转!!Java学习之自动装箱和自动拆箱源码分析
  6. DirectX 文本绘制
  7. 查看javadoc
  8. Windows 7 + Visual Studio 2012 + cocos2d-x 2.1.5
  9. jquery get checkbox inside element(td).
  10. 蜘蛛大战之 站点LOGO(SEO)
  11. ubuntu mount u盘以及cp拷贝文件夹
  12. Spark学习之路 (六)Spark Transformation和Action
  13. fastdfs 上传图片 完整版
  14. CDN的那些细枝末节
  15. bzoj 3622 已经没有什么好害怕的了——二项式反演
  16. Unity/C#基础复习(3) 之 String与StringBuilder的关系
  17. 开放地址法散列表ADT
  18. zoj-3410-Layton&#39;s Escape
  19. python之numpy矩阵库的使用(续)
  20. jquery flexslider 轮播插件

热门文章

  1. [Elm] Functions in Elm
  2. 【Solr专题之九】SolrJ教程 分类: H4_SOLR/LUCENCE 2014-07-28 14:31 2351人阅读 评论(0) 收藏
  3. js课程 1-5 js如何测试变量的数据类型
  4. Linux下停Tomcat服务器,出现Connection refused错误解决办法
  5. WeakRefence
  6. arcengine 开发经典帖 【强烈推荐仔细研读】
  7. MySQL经常使用的面试题
  8. Erlang中日志管理
  9. 利用spingmvc及servlet实现对url的地址去除后缀,更改后缀为html
  10. POJ 3714 Raid(平面近期点对)