【发布时间】:2009-07-07 14:33:45
【问题描述】:
如何解码 ASP.NET EventValidation 和 ViewState?
【问题讨论】:
-
对于 ViewState,请参阅“如何解码 viewstate”:http://stackoverflow.com/questions/22814/how-to-decode-viewstate/。
如何解码 ASP.NET EventValidation 和 ViewState?
【问题讨论】:
我最近回答了一个类似的问题,Getting values from viewstate using JQuery?。
基本上,默认情况下,ViewState 只是 Base64 编码的,因此只要管理员尚未配置站点对其进行加密,您就可以对其进行解码。引用我之前的回答:
如果您正在编写控件 你自己的消费,你只需要 从
ViewState阅读,你可以这样做 所以,但我不会推荐它,除非 你会找到一个调试良好的库 为你解析它。格式有点 毛茸茸的(见ViewState: All You Wanted to Know for more details)。
该链接对ViewState 进行了非常全面和清晰的介绍。
至于事件验证,我不确定它是 Base64 编码的还是看起来像 Base64(我找不到确凿的权威参考)。 This Rexiology article 可能会有所帮助。
【讨论】:
我不确定 EventValidation,但您可以使用 Fritz Onion 的 ViewState Decoder 解码 ViewState。
【讨论】:
我最近需要解码 ViewStates,发现这个工具很有用:View State decoder
【讨论】:
创建一个简单的 Windows 应用程序,并使用 Convert.FromBase64(str) 解码未加密的 ViewState 数据。
注意:GridView 会导致加密。
【讨论】: