在像Woot的论坛这样的页面上发送的ViewState是一种错误吗?

时间:2009-06-08 06:11:03

标签: asp.net viewstate

不是名称的名称,但是例如,所有Woot的forum pages(跨越四个子域)的每个网页浏览都会返回一个大约54KB的隐藏__VIEWSTATE值。

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTIxMDUyNjY3MjAPZBYCZg9kFgJmD2QWAmYPZBYEAgEPZBYCAgEPFQERLi4vQmxvZy9GZWVkLmFzaHh
kAgMPFgIeBWNsYXNzBQljb21tdW5pdHkWCAIBDxYGHgRocmVmBRpodHRwOi8vc2hvcHBpbmcueWFob28uY29tLx4Ja
... about 55,000 characters later ...
XNweCNxOCI+SG93IGRvIEkgcmV0dXJuIGEgZGVmZWN0aXZlIHByb2R1Y3Q/PC9hPjwvbGk+DQo8L3VsPmRkJUr78qEqw4o
bS8B4e2RCjO08Nsg=" />

你是否认为这可以帮助他们的服务器卸载存储在会话中的东西,可能还有数据库支持的会话,或者这会伤害他们的服务器,可能是所有嵌入式大小的客户端,因为它是一个巨大的块文本?它确实构成了总页面量的1/3。

在任何一种情况下,他们可能都需要吗?

3 个答案:

答案 0 :(得分:1)

如果视图状态与您提到的一样大,我认为设计人员在实现之前没有考虑到这一点。

答案 1 :(得分:1)

ASP.NET页面中的视图状态甚至可以比这更大。如果开发人员不理解它是什么以及如何使用它,它会严重增加页面的大小。

ASP.NET中的新MVC应用程序不使用viewstate。

viewstate用于跟踪页面上ASP.NET控件的状态,还可以包含这些控件中的大块数据。

答案 2 :(得分:1)

只需使用online viewstate decoder即可查看其存储内容。看起来他们正在存储页面的数据集。