• silverlight webclient方式请求网页不包含cookie信息问题解决方法


    Silverlight读取配置、上传图片等都是使用webclient来处理。发现了webclient请求的时候,有不包含cookie信息的情况,导致页面跳转失败。
     
    silverlight 的webclient请求有两种方式,一种是通过浏览器,一种是程序内部处理。这两种方式默认是SL自动选择的。
    如果是通过浏览器方式,会包含cookie信息;如果通过应用程序,则不会包含cookie信息。
     
    详细如下:
    // 摘要:
    // 提供对象以便指定是由浏览器还是由客户端来处理 HTTP 请求和响应。
    public static class WebRequestCreator
    {
    // 摘要:
    // 获取一个对象,该对象为 Web 请求和响应指定浏览器 HTTP 处理。
    //
    // 返回结果:
    // 一个 System.Net.IWebRequestCreate 对象,该对象为 Web 请求和响应指定浏览器处理。
    public static IWebRequestCreate BrowserHttp { get; }
    //
    // 摘要:
    // 获取一个对象,该对象为 Web 请求和响应指定客户端 HTTP 处理。
    //
    // 返回结果:
    // 一个 System.Net.IWebRequestCreate 对象,它与在 Web 浏览器之外运行的基于 Silverlight 的应用程序一起使用。
    public static IWebRequestCreate ClientHttp { get; }
    }
     
    为解决这个问题,我们可以设置webclient请求数据的处理方式。设置都通过浏览器方式处理即可。
    方法如下:
    在请求前,设置请求方式(我们可以在app.xaml.cs中指定即可):
    System.Net.WebRequest.RegisterPrefix("http://", WebRequestCreator.BrowserHttp);
    System.Net.WebRequest.RegisterPrefix("https://", WebRequestCreator.BrowserHttp);
  • 相关阅读:
    算法--将Excel列索引转换成默认标识
    Java参考资料-中文API
    java编程规范
    POI-根据Cell获取对应的String类型值
    将Excel中读取的科学计数法表示的Double数据转换为对应的字符串
    Android进程间通信之LocalSocket通信
    Android进程间通信之socket通信
    android用讯飞实现TTS语音合成 实现中文版
    Android Junit测试框架
    java interface的两个经典用法
  • 原文地址:https://www.cnblogs.com/bocoimg/p/2873341.html
Copyright © 2020-2023  润新知