当前位置: 首页 > 知识库问答 >
问题:

在C#中从httpwebrequest中获取垃圾内容

刁冠宇
2023-03-14
                HttpWebRequest requestTransaction;
                Uri uriTransact = new Uri(Url);
                requestTransaction = (HttpWebRequest)WebRequest.Create(uriTransact);
                requestTransaction.ContentType = "application/x-www-form-urlencoded";
                requestTransaction.Method = "Post";
                requestTransaction.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
                requestTransaction.KeepAlive = true;
                requestTransaction.Headers.Add("Cache-Control", "no-cache");
                requestTransaction.CookieContainer = cookies;
                requestTransaction.Headers.Add("Upgrade-Insecure-Requests", "1");
                requestTransaction.Headers.Add("Accept-Encoding", "gzip, deflate, br");
                requestTransaction.Headers.Add("Accept-Language", "en-US,en;q=0.9");
                requestTransaction.Host = host;
                requestTransaction.Headers.Add("Origin", requestOrigin);
                requestTransaction.Referer = requestReferer
                requestTransaction.UserAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36";


                byte[] sentData2 = Encoding.UTF8.GetBytes(postData2);
                requestTransaction.ContentLength = sentData2.Length;
                using (System.IO.Stream sendStream = requestTransaction.GetRequestStream())
                {
                    sendStream.Write(sentData2, 0, sentData2.Length);
                    sendStream.Close();
                }
                 using (var response = requestTransaction.GetResponse() as HttpWebResponse)
                {
                    var doc = new HtmlAgilityPack.HtmlDocument();
                    doc.Load(response.GetResponseStream());
                }

共有1个答案

贺飞星
2023-03-14

我也有同样的问题,结果是响应被压缩了。您可以移除

requestTransaction.Headers.Add("Accept-Encoding", "gzip, deflate, br");

不太确定br或者你可以添加

webRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;

到您的HttpWebRequest,顾名思义,它将自动解压缩响应。

 类似资料:
  • 我四处寻找,但找不到解决这个问题的办法。我正在用我能想到的最简单的例子来测试这个。这是处理代码: 如果我在串行监视器上查看输出,它会正确打印“012012012012012012012”等,没有任何问题。我写了一个简单的程序在处理中查看数据: 大多数情况下,它会打印垃圾: 偶尔它会输出正确的值: 看起来每个字节都向左移动了3位,尽管我不明白为什么每次运行程序时它的行为都不一样。有趣的是,如果我让a

  • 在我的项目中,我使用Master SPI通信从外部ADC获取模拟数据。我的MCU是STM32F746ZGTX。我的系统需要实时工作,所以我使用了SPI DMA接收和发送功能。 我在不使用DMA的情况下,通过SPI轮询正确读取所有外部ADC数据。在SPI轮询中,我首先向外部ADC发送控制字节,在此期间,程序在循环中等待,然后开始接收所有ADC数据。这个场景非常有效。 但我不想在每次ADC读取时(SP

  • 问题内容: 我正在读取一个很大的文件,并从每一行中提取文本的一小部分。但是,在操作结束时,我的工作记忆很少。似乎垃圾收集器在读取文件后无法释放内存。 我的问题是:有什么办法释放这种记忆?还是这是JVM错误? 我创建了一个SSCCE来演示这一点。它读取一个1 mb(由于16位编码,在Java中为2 mb)的文件,并从每行中提取一个字符(约4000行,因此大约为8 kb)。测试结束时,仍将使用全部2

  • 我如何从附加到C#电子邮件的ItemAttachment(消息)中获取MIME内容? C#代码: 在C#中获取附件的MIME内容的正确方法是什么?

  • 本文向大家介绍C#开发中的垃圾回收机制简析,包括了C#开发中的垃圾回收机制简析的使用技巧和注意事项,需要的朋友参考一下 GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久。早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是GC的第一次出现。Lisp的程序员认为内存管理太重要了,所以不能由程序员自己来管

  • 我需要使用从Google Drive中删除文件。根据我在这里和整个web上所读到的,“新API”中不支持文件删除。那(仍然)正确吗?我是说API已经不是那么新了... 我也读到了关于“明确内容并忘记”的策略,但我不想遵循这种方法。 null 编辑3:从5月28日开始,现在可以实际删除文件了。