1、添加一个SetHeaderValue方法:

public static void SetHeaderValue(WebHeaderCollection header, string name, string value)
{
var property = typeof(WebHeaderCollection).GetProperty("InnerCollection",BindingFlags.Instance | BindingFlags.NonPublic);
if (property != null)
{
var collection = property.GetValue(header, null) as NameValueCollection;
collection[name] = value;
}
}

2、调用这个方法设置HttpHeader头:

HttpWebRequest rq = (HttpWebRequest)WebRequest.Create("Url");
rq.Method = "GET";
SetHeaderValue(rq.Headers, "Host", "127.0.0.1");
SetHeaderValue(rq.Headers, "Connection", "keep-alive");
SetHeaderValue(rq.Headers, "Accept", "*/*");
SetHeaderValue(rq.Headers, "X-Requested-With", "XMLHttpRequest");
SetHeaderValue(rq.Headers, "User-Agent", "...");
SetHeaderValue(rq.Headers, "Referer", "http://127.0.0.1/index.php?m=Index&a=indexs");
SetHeaderValue(rq.Headers, "Accept-Encoding", "gzip, deflate");
SetHeaderValue(rq.Headers, "Accept-Language", "1.5");
SetHeaderValue(rq.Headers, "Cookie", "This is Cookie");HttpWebResponse resp = (HttpWebResponse)rq.GetResponse();using (Stream stream = resp.GetResponseStream())
{
StreamReader reader =new StreamReader(stream,Encoding.Default);
string responseString = reader.ReadToEnd();
MessageBox.Show(responseString);
}

3.可以通过抓包软件(如SRSniffer)查看到设置的报头。

来源;https://www.cnblogs.com/hnsongbiao/p/9381987.html

转载于:https://www.cnblogs.com/sharing1986687846/p/10282527.html

Http请求报头设置(C#)相关推荐

  1. [C#]Http请求报头设置

    1.添加一个SetHeaderValue方法: public static void SetHeaderValue(WebHeaderCollection header, string name, s ...

  2. httpcline转发_如何实现Http请求报头的自动转发[应用篇]

    如今的应用部署逐渐向微服务化发展,导致一个完整的事务往往会跨越很多的应用或服务,出于分布式链路跟踪的需要,我们往往将从上游服务获得的跟踪请求报头无脑地向下游服务进行转发.本文介绍的这个名为Header ...

  3. 四种为HttpClient添加默认请求报头的解决方案

    HttpClient在Web调用中具有广泛的应用,而为它添加默认请求头是我们经常遇到的需求,本文介绍4种为HttpClient添加默认请求头的方式. 直接在创建的HttpClient对象的Defaul ...

  4. 常用的请求报头和响应报头

    常用的请求报头 1.Host ( 主机和端口号) Host:对应网址 URL 中的 Web 名称和端口号,用于指定被请求资源的 Internet 主机和 端口号,通常属于 URL 的一部分. 2.Co ...

  5. 自定义http报头_为HttpClient添加默认请求报头的四种解决方案

    前言 HttpClient在Web调用中具有广泛的应用,而为它添加默认请求头是我们经常遇到的需求,本文介绍4种为HttpClient添加默认请求头的方式.下面话不多说了,来一起看看详细的介绍吧 第一种 ...

  6. [网络安全自学篇] 二十七.Sqlmap基础知识、CTF实战及请求参数设置(一)

    这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步.前文分享了Shodan搜索引擎的基本用法及Python命令行.本篇文章详细讲解了S ...

  7. 爬虫实战学习笔记_6 网络请求request模块:基本请求方式+设置请求头+获取cookies+模拟登陆+会话请求+验证请求+上传文件+超时异常

    1 requests requests是Python中实现HTTP请求的一种方式,requests是第三方模块,该模块在实现HTTP请求时要比urlib.urllib3模块简化很多,操作更加人性化. ...

  8. vue+axios请求时设置request header请求头(带上token)

    vue+axios请求时设置请求头(带上token) 1.在vue中,向后台发送请求,不管是get或post,url要带上userId,headers要带上token值(本地存储的token,wind ...

  9. Ajax请求如何设置csrf_token

    1. 方式一 通过获取隐藏的input标签中的csrfmiddlewaretoken值,放置在data中发送. $.ajax({url: "/cookie_ajax/",type: ...

最新文章

  1. HDU 4768 Flyer(二分法)
  2. python介绍和用途-Python --- Python的简介
  3. 计算机组装与维护致谢,毕业设计(论文)_计算机组装与维护 .doc
  4. MYSQL视图用户管理
  5. linux qt ping,Qt5.2中使用ping命令实现Ip扫描功能
  6. 重置mariadb密码
  7. 在matlab中ungetfile后,11条Matlab实用小技巧
  8. http请求requestUtils
  9. 10大热门人工智能开源工具(框架)
  10. 于无声处 启明星辰吹响工控安全号角
  11. C++中如何读取一个数的位数_初中数学:近似数和平均数知识点总结及练习
  12. php相差天数,php获取给定日期相差天数
  13. Redis 快速入门 -- Redis 命令(6)
  14. 白菜cms双端影视APP源码
  15. VOC数据集格式介绍
  16. DiskGenius格式化磁盘、U盘
  17. 创龙TI Sitara列AM4376/AM4379 ARM Cortex-A9高性能低功耗处理器
  18. 在chrome中屏蔽百度推荐
  19. 卧槽!微信又更新了新功能,快来尝鲜!!
  20. windows的注册表有什么用?

热门文章

  1. 如何在anaconda环境下安装tensorflow/pytorch/keras等
  2. 40%美国人付不起400美元意外开销,大家怎么看?
  3. 银行喜欢全额还款的客户,还是喜欢最低还款客户?--编辑
  4. 12家股份银行当中,哪个盈利能力和口碑是最好的?
  5. BRAND-NEW OF DOUBLES工作组合的新作品
  6. python人脸识别门禁_用Python做人脸识别
  7. php 年的第几天,收藏-php中某年第几天计算出日期年月日的代码
  8. linux 下停止监听程序,Linux下启动Oracle服务和监听程序步骤
  9. Unity 2017 Game Optimization 读书笔记(3)Scripting Strategies Part 3
  10. 策略模式与简单工厂模式区别(转)