`
chenhua_1984
  • 浏览: 1233130 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

mongodb db.eval()

阅读更多

   使用db.eval()可以在Mongo的服务端执行javascript脚本,然后返回结果

 

 

D:\mongodb_64-2.6.4\bin>mongo.exe localhost:27017
MongoDB shell version: 2.6.4
connecting to: localhost:27017/test
> db.eval("return 'hello';");
hello
> db.eval("return 'hello';");
hello
> db.eval("function(){return 'hello';}");
hello

 

 

  可以传递多个参数,以数组形式

 

> db.eval("function(name){return 'hello'+name;}",['chenhua']);
hellochenhua

 

> db.eval("function(name,str){return 'hello  '+name+''+str;}",['lilei','how are
you !!']);
hello  lilei,how are you !!undefined
>

  当然这种使用+号的方式是可注入的,需要限定变量的作用域。

 

另外可以使用db.eval("print('test')") 记录日志用来调试

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics