Knockout.js加密和解密前端模型数据

时间:2013-04-16 06:32:16

标签: c# asp.net-mvc-3 razor knockout.js knockout-mapping-plugin

当使用knockout.js和knockout.mapping时,我将模型数据传递给视图,并使用“@ Html.Raw(Json.Encode(Model));”将其存储为Javascript变量。我的问题是,加密和解密模型数​​据数组的最有效方法是什么,阻止用户通过前端查看这个?提前谢谢!

1 个答案:

答案 0 :(得分:0)

如果其敏感数据不发送给客户端,则将其置于服务器端用户会话

如果将其发送到客户端那么重要,那么使用cookie,加密cookie并将其保存在客户端,收到请求后,提取,解密cookie。

现在,如果您真的希望当前的代码能够正常工作,那么就加密您的模型属性,如

public class Sensitive{
 public String Name{  
   set{
    this.Name= YourEncryptionFunc(value)
   }
  get{
   return DecryptFunc(this.Name);
  }
  }
}

序列化此类并将其发送到客户端