2012-10-05 39 views
0

我已经编写了一个应用程序,它可以抓取某个网站的信息。Httpwebrequest在WiFi比3g/2g上返回的结果不同

通过WiFi或在我的模拟器,它完美的作品。

我执行一个httpwebrequest,并读取每一行并将它们放入一个列表中,然后我可以遍历这个列表并找到我需要的数据。

但是,当我在2G或3G上尝试相同的事情时,Web请求会在一行中返回所有HTML,这会破坏我所有的代码。

有没有人知道它为什么这样做,或者如果有反正我不想重写我的大部分代码。

回答

2

您的提供商很可能会拦截您的请求并删除所有不必要的字符,以加快互联网连接速度并减少流量。这是常见的做法。如果这打破了你的代码,那么你应该确定为什么删除空格和这样的字符会破坏你的代码。

对此,你无能为力。你应该重写你的代码以减少限制。

+0

懒惰的编码我想。我将使用XDocument。 – boburob

+0

是的,期待空白区域和换行符在那里存在常见的不良做法。如果我的回答对您有帮助,请随时将其标记为答案。 :) – SomebodyYouKnow

+0

XDocument是解析HTML文档的不好方法,因为HTML不是有效的XML。您应该使用HTTP Agility Pack,它提供了很好的解析HTML的方法。 – SomebodyYouKnow