如何通过表单提交将数据作为JSON发送?
问题描述:
我正在使用Angular/Node构建应用程序。 在我的应用程序中,我需要使用JSON数据提交表单。 我正在用一些name_attribute和value = JSON数据在该窗体中附加一些输入字段。如何通过表单提交将数据作为JSON发送?
在我使用request.body.name_attribute接收到值时,我的服务器代码(用Node编写),JSON正在成为一个字符串,我必须做一个JSON.parse(value)才能使用它。
不过,我不希望在服务器端使用JSON.parse(...),因为它可以让我的应用程序容易出现脚本攻击。
有没有办法使用form.submit()发送JSON数据而没有将数据自动转换为字符串?
[*特定于和表单提交发送JSON数据(没有数据得到改变字符串)回答真的理解;)]
答
在服务器端使用JSON.Parse应该是绝对安全的,因为JSON如果输入不是有效的JSON,.Parse会简单地抛出一个错误。 JSON只能保存数据,不能编码。
事实上,如果你担心安全,实在很少,你可以做客户端,以保护您的系统,因为恶意攻击者可以发送任何他或她希望你的服务器。