我正在使用支持的Node.js开发一个项目,我也使用
JSON通过Web套接字向客户端传输数据.我遇到的问题是,如果一个无效的字符串被发送到服务器(很容易被用户弄乱
JavaScript控制台),那么它会在尝试解析时崩溃服务器.
我现有的防止这种情况发生的方法是使用try / catch语句.
我的问题是,是否有更合适的方法来检查字符串是否可解析?使用try / catch语句是好的做法还是仅用于调试?
谢谢.
解决方法
使用try / catch对于在许多环境中创建健壮的代码至关重要 – 对于优雅地处理错误条件非常重要.
但是,每当您接受来自外部源的数据时,您必须对其进行验证,以确保您没有打开攻击向量.
这个节点模块有几个JSON元素,包括JSON Schema,可能会有所帮助:https://github.com/kriszyp/json-schema