【问题标题】:How do I prevent users from changing form values or removing input fields elements using inspector tool?如何防止用户使用检查器工具更改表单值或删除输入字段元素?
【发布时间】:2017-01-28 09:52:13
【问题描述】:

我有一个表单,其中包含一些单选按钮、必填字段和复选框,需要在提交前完成。我一直在测试表单并使用检查器工具,我能够更改单选按钮的值,删除必填字段元素并删除勾选按钮元素,并将其提交到我的数据库没有任何问题。

如何防止这种情况发生?

我的表单域示例:

<input type="checkbox" required  name="terms">I agree to the <a href="/terms-and-conditions" target="_blank"> Terms and Conditions</a></label>

<input type="radio" name="medicalAilments" value="No">No</label>

<input type="email" id="userEmail" class="form-control" required name="userEmail">

【问题讨论】:

    标签: javascript jquery html node.js


    【解决方案1】:

    简短的回答:你不能。即使你可以在网络浏览器中禁用编辑,是什么阻止你的客户使用 cURL 模拟格式错误的请求?我假设您将此表单发布到 Web 服务器,在这种情况下,您应该在您的服务器上进行验证,如果必填字段不存在则返回错误。一个好的经验法则是永远不要相信客户。修改请求和添加/删除/修改值很简单。

    【讨论】:

    • 所以基本上我应该在后端做额外的验证。
    • 是的,您应该始终在后端进行验证。您可以在客户端上进行附加验证,但这纯粹是为了用户体验。恶意用户可以轻松绕过任何客户端保护。
    猜你喜欢
    • 2018-04-30
    • 2022-12-09
    • 1970-01-01
    • 2018-02-18
    • 2015-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多