如何对数据库变量进行健全性和验证检查
how to do sanity and validation checks on database variables?
配置文件(conf.json):
{
"mongodb": {
"host": "127.0.0.1",
"port": "3000",
"db": "myproject"
}
}
js文件中的用法
var conf = require('./conf.json')
var host = conf.mongodb.host;
var port = conf.mongodb.port;
var db = conf.mongodb.db;
var url = "mongodb://"+host+":"+port+"/"+db;
在此之后,我将使用url变量建立与mongodb的连接。
我想要实现的是,在尝试连接到mongodb之前,它应该验证conf.json文件中设置的所有变量。如果它们是未定义的或其他什么,控件应该返回,而不是尝试下面的代码。
注意:我曾想过使用if条件来检查此变量是否未定义。但我正在寻找更好的解决方案。
我听说javascript的"||"运算符可以提供帮助,但不确定如何提供帮助
"||"运算符可以帮助您定义标准,例如:
var host = conf.mongodb.host || "127.0.0.1";
这意味着"主机"将从"conf"中获得值,如果它不是伪造的,则为标准值"127.0.0.1"
注意:如果您将"conf.mongodb.host"定义为一个错误值,例如0,则将应用默认值!看看JS中的Falsy值。
根据您喜欢的行为,您可能希望抛出异常,或者实现高级检查,以确保例如"主机"实际上是一个有效的IP地址。
如果你绝对想用"||"运算符抛出错误,请尝试:
function throwErr(msg){
throw new Error(msg);
}
var host = conf.mongodb.host || throwErr("Mongo host undefined");
var port = conf.mongodb.port || throwErr("Mongo port undefined");
var db = conf.mongodb.db || throwErr("Mongo database name undefined");
相关文章:
- Javascript中的电子邮件验证检查
- 如何在Netsuite Suitelet脚本中进行验证检查
- 多重验证检查 - 逻辑错误
- jqBootstrapValidation.js中的 Javascript 用户名验证检查
- 禁用对单个非映射选项字段的验证检查
- 推送提交后,如果输入字段为黑色,则显示验证检查或以红色字母显示警告
- Javascript 和 HTML 表单验证检查
- Jquery验证插件,使用选项的数据元素作为验证检查
- 在 C# 和 JavaScript 中对手机号码进行验证检查
- jQuery 验证 - 检查两个密码是否相等
- 使用javascript验证检查将文件上载到文件夹-ASP.NET
- AngularJS - 表单自定义验证 - 检查是否至少有一个输入为空
- jQuery表单验证-检查电子邮件是否相同
- 如何对数据库变量进行健全性和验证检查
- 验证检查输入的长度
- 如何在解析前取消/忽略AngularJS异步验证检查
- 并不是所有的验证检查都在提交时执行
- 只有当验证检查返回true时才通过ajax POST
- Angular的ui-router,可以在其他解决之前解决一个身份验证检查
- javascript验证检查点击条件从HTML