草庐IT

heroku-buildpack-nodejs

全部标签

node.js - 如何为部署到 Heroku 的 Node +mongo 应用程序播种数据?

我有一个以MongoDB作为数据库的nodeexpress应用程序。我想要一个seed.js文件,我可以运行它来将初始数据填充到数据库中。我在本地机器上执行此操作没有问题。我只是在我的seed.js文件中编写mongo命令并运行它:$mongolocalhost:27017/myAppseed.js但是,当我将我的应用程序部署到Heroku(包括MongoLab)时,我不确定如何在那里播种数据。大多数时候,Google都会引导我使用Rails。那么,是否有一种无需编写脚本即可为HerokuMongoLab播种数据的简单方法?更新:如果我尝试使用来自heroku的MONGOLAB_URI

node.js - 从 nodejs 连接到 mongodb 时使用 authenticationDatabase 选项

当我使用mongo从shell连接到mongodb时,我需要使用以下命令mongo-uxxxx-pxxxx--authenticationDatabaseadmin然后我获得了完全访问权限...但是在从nodejs连接时我找不到指定authenticationDatabase的方法这是我的代码varMongoCli=require('mongodb').MongoClient;varurl="mongodb://127.0.0.1:27017/contactapp";MongoCli.connect(url,function(err,db){if(err){console.log('U

node.js - 如何在nodejs中将变量名称作为mongo db的集合名称传递

我正在使用Nodejs和mongodb,我想将一个变量传递给集合varid="someid";db.collection(id).insert("somejsondata");如果我这样做,它会给我一个错误,因为集合名称必须是一个字符串。 最佳答案 您可以使用var作为集合名称创建变量varcolName="mytest"然后对集合执行如下所有操作:db[colName].find()db[colName].rename("newName")等这将帮助您保持集合名称动态,甚至可以更新它以保持您的命令不变。希望这对您有所帮助!

node.js - 如何捆绑 NodeJs 应用程序?

考虑一下我已经完成了我的NodeJswithExpress和MongoDB应用程序。我可以捆绑我的应用程序以将其交付给客户端,但在这种情况下,客户端必须安装所有必需的npm模块并更改mongoDB连接url。所以要解决这个问题:是否有任何其他方式来捆绑我的应用程序,以便客户端不需要安装任何npm模块来运行应用程序?如果是,那么客户端如何连接到他的mongodb? 最佳答案 pkgVercel的作品非常适合我。它将所有内容捆绑到一个从终端运行的可执行文件中。这使得分发变得非常容易。要连接到Mongo实例,您必须拥有用户编辑的某种配置文

node.js - 使用 docker-compose 将 NodeJS-App 连接到 MongoDB

我有什么我尝试将我的nodejs应用程序连接到mongoDB容器。我用Mediums-Tutorial做了这个打开,所以我的dockerfiles看起来像这样:DockerfileFROMnode:carbonWORKDIR/usr/src/appCOPYpackage*.json./RUNnpminstallCOPY..EXPOSE8085CMD["npm","start"]docker-compose.ymlversion:"2"services:metis:build:.ports:-"8085:8085"links:-mongomongo:image:mongovolumes:

node.js - 如何使用 Nodejs 删除 Mongodb 中 JSON 格式数据中的斜线?

我使用Nodejs和mongoskin将数据以JSON格式存储在mongo表中。Mongo自动在json格式的数据中添加斜线。然后当我检索时,我无法解析数据。请建议我,如何删除斜杠或如何解析数据?db.messagetable.find().forEach(printjson){"_id":"1861574","MatriId":"1861574","session":"{\"messages\":{\"cometchat\":{\"timedifference\":0,\"cometchat_buddytime\":0,\"msgavails\":\"\"}}}","expires"

node.js - 使用 Nodejs 和 Imagemagick 调整图像大小

使用nodejs和imagemagick可以调整图像大小并将其发送到浏览器。varhttp=require('http'),spawn=require('child_process').spawn;http.createServer(function(req,res){varimage='test.jpg';varconvert=spawn('convert',[image,'-resize','100x100','-']);convert.stdout.pipe(res);convert.stderr.pipe(process.stderr);}).listen(8080);测试图像

javascript - nodejs中的异步和递归

从express和mongoose开始,我经常需要对集合进行一些批量操作。然而,它通常涉及回调,考虑到并发是如何在nodejs中编码的,这是一个痛苦。所以基本上//givenacollectionCvari=0;vardoRecursive=function(i){if(i现在我不记得在我得到Node的堆栈溢出流之前的最大堆栈是多少,但我猜有10000个元素,它不会做。我想知道是否还有其他方法可以处理这个问题,如果有,它们是什么?谢谢 最佳答案 如果目标是异步迭代集合,则有许多可用的控制流库。一个很好的例子是async及其reduc

ruby-on-rails - Heroku 预编译 Assets 失败

我很难解决以下问题并弄清楚为什么我的Assets无法在slug编译时预编译...奇怪的是,当我检查实时日志时Assets在运行时编译正常...任何想法?是否正在尝试连接到数据库?PreparingappforRailsassetpipelineRunning:rakeassets:precompilerakeaborted!undefinedmethod`match'fornil:NilClass/tmp/build_27348f41-abb7-46f0-a7ac-6f66bf0feff7/vendor/bundle/ruby/1.9.1/gems/mongoid-3.1.4/lib/

node.js - MongoDB 和 Mongoose 访问一个数据库,同时对另一个数据库进行身份验证(NodeJS、Mongoose)

我有几个数据库,不想为每个数据库创建单独的用户帐户。MongoDB支持使用在另一个数据库中定义的帐户来验证对数据库的访问的概念,但是很难找到语法示例。当我终于弄明白时,我正处于发布问题的边缘。以防万一它可以帮助其他人 最佳答案 这是mongodb、mongoose、Node设置的语法。从mongoshell在admin数据库中创建数据库用户使用管理员db.addUser({用户:"mydbuser",pwd:"mypassword",角色:[]})创建数据库并添加用户-userSource表示凭据在管理数据库中定义使用mydbdb.