阅读 GetResponseStream() 的最佳方式是什么?

What is the best way to read GetResponseStream()?(阅读 GetResponseStream() 的最佳方式是什么?)
本文介绍了阅读 GetResponseStream() 的最佳方式是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

从 GetResponseStream 读取 HTTP 响应的最佳方式是什么?

What is the best way to read an HTTP response from GetResponseStream ?

目前我正在使用以下方法.

Currently I'm using the following approach.

Using SReader As StreamReader = New StreamReader(HttpRes.GetResponseStream)
   SourceCode = SReader.ReadToEnd()
End Using

我不太确定这是否是读取 http 响应的最有效方式.

I'm not quite sure if this is the most efficient way to read an http response.

我需要将输出作为字符串,我见过一个 文章采用不同的方法,但我不太确定它是否是一个好方法.在我的测试中,代码在不同的网站上存在一些编码问题.

I need the output as string, I've seen an article with a different approach but I'm not quite if it's a good one. And in my tests that code had some encoding issues with in different websites.

您如何阅读网络回复?

推荐答案

我对字符串进行处理的简单方法.请注意 StreamReader 构造函数上的 true 第二个参数.这告诉它从字节顺序标记检测编码,并且可能有助于解决您遇到的编码问题.

My simple way of doing it to a string. Note the true second parameter on the StreamReader constructor. This tells it to detect the encoding from the byte order marks and may help with the encoding issue you are getting as well.

string target = string.Empty;
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("http://www.informit.com/guides/content.aspx?g=dotnet&seqNum=583");

HttpWebResponse response = (HttpWebResponse)httpWebRequest.GetResponse();
try
{
  StreamReader streamReader = new StreamReader(response.GetResponseStream(),true);                
  try
  {
    target = streamReader.ReadToEnd();
  }
  finally
  {
    streamReader.Close();
  }
}
finally
{
  response.Close();
}

这篇关于阅读 GetResponseStream() 的最佳方式是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Is Unpivot (Not Pivot) functionality available in Linq to SQL? How?(Linq to SQL 中是否提供 Unpivot(非 Pivot)功能?如何?)
Linq2SQl eager load with multiple DataLoadOptions(具有多个 DataLoadOptions 的 Linq2SQl 急切加载)
Orderby() not ordering numbers correctly c#(Orderby() 没有正确排序数字 c#)
Grouping Contiguous Dates(分组连续日期)
SQLite.net SQLiteFunction not working in Linq to SQL(SQLite.net SQLiteFunction 在 Linq to SQL 中不起作用)
LINQ to SQL and Null strings, how do I use Contains?(LINQ to SQL 和空字符串,我如何使用包含?)