所以我们遇到了一个有趣的问题。我们希望在MongoDB层添加身份验证以提高安全性。但是我们没有得到有利的结果。
预设置
验证用户已成功创建
{ “_id”:“applicationdb.appuser”, “user”:“appuser”, “db”:“applicationdb”, “角色”:[ { “角色”:“readWrite”, “db”:“applicationdb” } ] }
情景1:
使用以下方式连接mongoose:
mongoose.connect( '的mongodb:// APPUSER:password@xx.xxx.xxx.xxx:27017 / applicationdb');
没有收到连接错误,所以尝试通过Mongoose执行GET导致操作超时而没有任何错误(至少我能找到)
情景2:
使用以下方式连接mongoose:
mongoose.connect( '的mongodb://xx.xxx.xxx.xxx:27017 / applicationdb');
没有收到连接错误,所以尝试通过Mongoose执行GET并成功返回文档
为什么我们在MongoDB中使用身份验证时会收到此超时并且从未完成请求?
任何帮助都会很棒,我们在这一点上不知所措!
答案 0 :(得分:1)
您需要使用id data = _carStatuName[indexPath.row];
// since the error seems that your data is a number type
if([data isKindOfClass:[NSNumber class]]){
if(_carStatuValue.count == 0){
cell.statuValueLabel.text = @"null"
}
else{
cell.statuValueLabel.text = [data stringValue]; // use the NSNumber string value
}
}
else{
// pre-empt the crash
cell.statuValueLabel.text = [NSString stringWithFormat:@"%@",data]; // will output whatever the data is. technically this shouldn't happen if you are sure all your data will be an NSNumber type
}
选项重新启动mongo服务,请参阅here
如果它不起作用,请执行以下操作:
尝试使用--auth
设置在mongoose中设置服务器选项。请参阅here和here。