1

当用户单击查看源时,如何防止用户在页面上显示隐藏字段。因为我想让我的应用程序更安全。我希望查看源页面不显示我在 POST 方法中传递的隐藏字段。另外,我想隐藏页面上的 javascipt/jquery 和 css 代码。

简而言之,我不希望用户看到任何不相关的数据(对于用户)。有什么建议么。

4

5 回答 5

3

第一件事:不能隐藏 html 代码或 css 代码。如果您将打开 fir bug 或其他一些东西,它可以很容易地看到。

查看源代码显示了实际编写在html页面中的代码(即:未动态添加的元素。)

因此,如果您只是不想在视图源上显示它,您可以使用 JavaScript 动态添加该隐藏字段。但事件虽然它是由萤火虫可见的。

如果该信息太安全,请不要将其添加到隐藏字段中。

更好的方法:将其保存在全局 javascript 对象上,例如:

var hiddenValue={
'hidden1':"some value",
'hidden2':"some value2"
}

//存储在全局变量中使您可以灵活地在以后更改它,就像在隐藏字段中一样。

如果您想以表格形式发布此值。使用 javascript 执行此操作。喜欢

//a jquery example

    function submitForm(){
    var formObj=$('#form');
    formObj.append('<input type="hidden" name="hidden1" value="'+hiddenValue.hidden1+'" /><input type="hidden" name="hidden2" value="'+hiddenValue.hidden2+'" />').submit();
    }

但请记住,总有一种方法可以查看前端代码。只有你能做的就是让它变得复杂阅读。

于 2013-03-07T05:09:43.050 回答
0

海事组织你应该

将值放入 cookie

加密cookie并将其发送给客户端

在收到请求时

解密 cookie 并读取值

或者如果数据是敏感的使用会话

于 2013-03-07T06:13:44.140 回答
0

除了禁用右键单击之外,您可以做的不多。但他们仍然可以使用萤火虫和其他检查员进行检查

于 2013-03-07T04:44:08.913 回答
0

您不能真正做到这一点,因为总有一种方法可以查看源代码。

您可以做的是将您想要传递的所有信息保存在加密的 cookie 或会话变量中。

至于安全性,如果您在 HTML/Javascript 中显示的内容应该受到保护,我强烈建议您重新考虑您的方法。

请记住,HTML 是浏览器将输出的渲染代码,因此不可能隐藏部分代码。

于 2013-03-07T04:46:04.413 回答
0

我更喜欢你为 java 脚本使用Node.js服务器端脚本。
而不是使用隐藏字段尝试使用 java 脚本缓存。
当 JavaScript 受到保护时,您的 java 脚本也将是安全的,而不是隐藏字段

于 2013-03-07T04:49:21.407 回答