C# Request中修改header信息

var headers = app.Context.Request.Headers;
Type hdr = headers.GetType();
PropertyInfo ro = hdr.GetProperty("IsReadOnly",
    BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy);
// Remove the ReadOnly property
ro.SetValue(headers, false, null);
// Invoke the protected InvalidateCachedArrays method
hdr.InvokeMember("InvalidateCachedArrays",
    BindingFlags.InvokeMethod | BindingFlags.NonPublic | BindingFlags.Instance,
    null, headers, null);
// Now invoke the protected "BaseAdd" method of the base class to add the
// headers you need. The header content needs to be an ArrayList or the
// the web application will choke on it.
hdr.InvokeMember("BaseAdd",
    BindingFlags.InvokeMethod | BindingFlags.NonPublic | BindingFlags.Instance,
    null, headers,
    new object[] { "CustomHeaderKey", new ArrayList {"CustomHeaderContent"}} );
// repeat BaseAdd invocation for any other headers to be added
// Then set the collection back to ReadOnly
ro.SetValue(headers, true, null);
时间: 2024-10-06 12:14:25

C# Request中修改header信息的相关文章

如何限制Exchange用户在OWA中修改个人信息

一.为什么要限制或禁用呢? 最近在做一个Exchange的项目,客户那老是有用户在用户的ECP上随意修改自己的个人信息,懂Exchange与AD的童鞋们知道,用户自行修改后的这些信息会同步到AD,并且在地址簿中显示,基于安全原因和管理原因需要禁用ECP这个自助功能. 二.要限制哪一些功能? 以Exchange 2013为例在OWA中,我们先来看看,有哪几类功能,可供用户修改个人信息,主要包括以下几类: 1.自定义邮件签名.外出自动答复等邮件相关信息,如下图: 2. 修改密码.照片.帐号常规信息等

基于maven+ssm的增删改查之修改员工信息

具体流程:点击编辑按钮,弹出编辑模态框,同时会发送ajax请求获取员工和部门信息并显示在相关位置.在模态框中修改相关信息,发送ajax请求进行保存. 获取部门信息之前已经有了,现在是获取员工信息. EmployeeController.java //查询员工信息 @ResponseBody @RequestMapping(value="/emp/{id}",method=RequestMethod.GET) public Msg getEmp(@PathVariable("i

获取request中传递过来的header信息

1.添加HttpServletRequest注解,也可以作为参数传递 @Autowired protected HttpServletRequest request; 2.获取header /** * <h5>功能: 获取从request中传递过来的header信息</h5> * * @return Map<String, Object> */ public Map<String, Object> getHeaders() { Map<String,

从返回的HTTP Header信息中隐藏Apache的版本号及PHP的X-Powered-By信息

默认情况下,很多apache安装时会显示版本号及操作系统版本,甚至会显示服务器上安装的是什么样的apache模块.这些信息可以为黑客所用,并且黑客还可以从中得知你所配置的服务器上的很多设置都是默认状态. 这里有两条语句,你需要添加到你的httpd.conf文件中:ServerSignature OffServerTokens Prod ServerSignature该参数设置 出现在apache所产生的像404页面.目录列表等页面的底部,三个选项 On|Off|EMai 主要起开关作用,推荐设置

Unity3D 在Update中不要过多地修改Transform 信息

前文说到碰撞检测时候,不要在Update内部尝试移动GameObject 来检查碰撞检测,这样是徒劳无功.但是 说到 因为你移动的过程中其实并没有将实际的移动位置更新到物理引擎,只是做了个缓存而已, 只有在调用FixedUpdate的内部函数(物理引擎处理)时,才会将最新的位置设置到物理引擎上,甚至是渲染引擎也使用最新的位置. 其实是有问题的,因为我发现每次移动都会导致 碰撞器不断更新 下面是测试代码: int TEST = 0; // Returns true if you were able

DataGridView控件选中单元格、直接在控件中修改信息

                                                           原文取自个人博客:www.jycoder.com欢迎访问 一,获取DataGridView控件中的当前单元格 若要与DataGridView进行交互,通常要求用编程的方式发现哪个单元格出于活动状态.如果需要更改单元格,可通过DataGridView控件的CurrentCell属性来获取当前单元格的信息: 语法如下: Public DataGridViewCell CurrentC

nginx 安全笔记 (修改nginx的header信息和错误显示版本号)

随笔记载,欢迎指正: 修改nginx的header信息和错误显示版本号 1.隐藏版本号: nginx的配置文件nginx.conf找到http栏目加入: server_tokens off; 2.修改显示nginx的名称 需要修改源码文件: /opt/soft/nginx-1.2.0/src/http/ngx_http_special_response.c vi /opt/soft/nginx-1.2.0/src/http/ngx_http_special_response.c 找到29行: 2

在jquery的ajax中添加自定义的header信息

转自网络 1 $.ajax({ 2 type: "POST", 3 url: "http://192.168.0.88/action.cgi?ActionID=WEB_RequestCertificateAPI", 4 data: { 5 "user": "api", 6 "password": "api" 7 }, 8 dataType: "json", 9 Con

在nginx.conf配置中的server段,添加清除header信息

添加清除header信息 location /api/ { more_clear_headers "X-Powered-By"; more_clear_headers "Server"; more_clear_headers "ETag"; more_clear_headers "Connection"; more_clear_headers "Date"; more_clear_headers "