Javascript 通过ASP.net中的客户端控件公开服务器端状态

Javascript 通过ASP.net中的客户端控件公开服务器端状态,javascript,asp.net,ajax,client-side-data,Javascript,Asp.net,Ajax,Client Side Data,希望这不是一个多余的问题——我真的不知道该怎么说。假设我在ASP.net页面上有一个项目列表。该列表是可选择的,因为每当用户单击其中一个时,页面都会进行回发,服务器代码将索引或图片的某个唯一标识符存储在ViewState属性中,以指示该图片当前已被选中 我希望最小化服务器上的负载,因此我希望在客户端以某种方式存储表示映像的索引或唯一标识符。我能想到的最好的方法是将所述信息存储在一个隐藏的字段中),但在我发疯之前,我有两个问题: 这是否以任何方式、形式或形式(即公开页面的实现细节)存在安全风险 是

希望这不是一个多余的问题——我真的不知道该怎么说。假设我在ASP.net页面上有一个项目列表。该列表是可选择的,因为每当用户单击其中一个时,页面都会进行回发,服务器代码将索引或图片的某个唯一标识符存储在ViewState属性中,以指示该图片当前已被选中

我希望最小化服务器上的负载,因此我希望在客户端以某种方式存储表示映像的索引或唯一标识符。我能想到的最好的方法是将所述信息存储在一个隐藏的字段中),但在我发疯之前,我有两个问题:

  • 这是否以任何方式、形式或形式(即公开页面的实现细节)存在安全风险

  • 是否有更好的/最好的方法可以达到更高的行业标准?ASP.net是否提供了一个比我的想法更简洁的框架?似乎这对我来说是一个相当普遍的要求

  • 我已经在ASP.net工作了大约两年了。请仁慈一点:-)

    最好的, 帕特里克·科祖布

  • 唯一的安全风险是某些列表项必须保持不可选择。听起来在你的情况下不是这样的。用户已经知道该信息,因为他或她已经选择了该项

    注意:如果服务器曾经对该信息执行任何操作并将其从用户处收回,则必须验证索引值。否则,用户可能会将其更改为无效索引,如(-2),并触发异常

  • 您可以将索引(或相关值)存储在全局javascript变量中。如果您要避免返回服务器,.NET实际上不起作用


  • 谢谢大卫;这是有道理的。