• 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);
  • 相关阅读:
    MVC基础
    图片水印和图片验证码
    Jquery弹窗
    AJAX基础
    Jquery--动画
    Jquery--动画
    JQuery
    LinkQ 组合查询与分页
    LinQ的简单使用
    JavaScript复习
  • 原文地址:https://www.cnblogs.com/yuxiaoyu/p/6192511.html
Copyright © 2020-2023  润新知