HTTPWebResponse暴露了Headers的属性,是否可以使用Reflection获取像使用socket获取的原始响应(Header和Content合并在一起),我认为一定有方法。
我可以使用socket但需要大量工作使它们可用,如代理支持、https、进度事件等...清单很长,我被强烈建议使用HTTPWebRequest,唯一的问题是我需要带响应的原始headers,我正在尝试下载的网站发送了一个非常长而奇怪的cookie,这个cookie不能被HTTPWebRequest、WebClient处理。WordPress博客,使用WebClient无法登录任何WordPress博客,但使用Sockets手动处理cookie可以完美解决,可能是WebClient中的一个bug。 1) 只需要原始headers,那就万事大吉。 2) 而且还有文章链接 文章说HTTPWebRequest存在问题,只有一个线程在下载,而其他线程则被保持等待状态,如果这是真的,那么sockets更好?? 文章说: 这段代码运行良好,但它有一个非常严重的问题,因为WebRequest类函数GetResponse锁定了对所有其他进程的访问,即在前面的代码的最后一行中,WebRequest将检测到检索的响应已关闭。因此,我注意到始终只有一个线程在下载,而其他线程则在等待GetResponse。为了解决这个严重的问题,我使用Socket实现了我的两个类MyWebRequest和MyWebResponse。
我可以使用socket但需要大量工作使它们可用,如代理支持、https、进度事件等...清单很长,我被强烈建议使用HTTPWebRequest,唯一的问题是我需要带响应的原始headers,我正在尝试下载的网站发送了一个非常长而奇怪的cookie,这个cookie不能被HTTPWebRequest、WebClient处理。WordPress博客,使用WebClient无法登录任何WordPress博客,但使用Sockets手动处理cookie可以完美解决,可能是WebClient中的一个bug。 1) 只需要原始headers,那就万事大吉。 2) 而且还有文章链接 文章说HTTPWebRequest存在问题,只有一个线程在下载,而其他线程则被保持等待状态,如果这是真的,那么sockets更好?? 文章说: 这段代码运行良好,但它有一个非常严重的问题,因为WebRequest类函数GetResponse锁定了对所有其他进程的访问,即在前面的代码的最后一行中,WebRequest将检测到检索的响应已关闭。因此,我注意到始终只有一个线程在下载,而其他线程则在等待GetResponse。为了解决这个严重的问题,我使用Socket实现了我的两个类MyWebRequest和MyWebResponse。
useUnsafeHeaderParsing
的过程中涉及到一个内部类中的私有字段,其默认设置为false。不幸的是,将它设置为true并不能起到帮助作用。深入挖掘... - Jacek Gorgoń