Articles of heroku postgres

Node.js和postgres LISTEN

我想使用Heroku,PostgreSQL和Node.js,并设置它,以便随时在我的postgres数据库中添加loggingNode.js将该行的内容打印到控制台。 我试图按照这些指示设置它: http://lheurt.blogspot.com/2011/11/listen-to-postgresql-inserts-with.html http://bjorngylling.com/2011-04-13/postgres-listen-notify-with-node-js.html 这里是node.js代码 var pg = require('pg'); conString = '/*my database connection*/'; var client = new pg.Client(conString); client.connect(function(err) { if(err) { return console.error('could not connect to postgres', err); } client.connect(); client.query('LISTEN "loc_update"'); client.on('notification', function(data) { console.log(data.payload); }); }); 这是在postgres数据库上执行的function String function = "CREATE FUNCTION notify_trigger() RETURNS trigger AS $$ " + "DECLARE " […]

摩卡+ Nodejs + Heroku .env文件

我在Heroku上运行的NodeJS上有一个REST应用程序。 我有我的.env文件设置为本地开发和工作正常,每当我运行领class在本地服务我的应用程序。 当我将它部署到我的heroku服务器时,该应用程序也运行良好。 我正在尝试使用Mocha / Supertest / should / assert为我的应用编写unit testing。 当我通过Mocha运行我的应用程序时,它不会加载.env文件来获取我的环境variables – 在我的情况下是PSQL数据库的URL。 因此,我所有涉及数据库I / O超时的testing。 我一直在互联网search解决scheme,但我似乎无法find有用的东西。 这是一些示例代码: app.js: var application_root = __dirname, express = require("express"), port = process.env.PORT || 4482; pg = require('pg').native, client = new pg.Client(process.env.DATABASE_URL); // Connect To DB client.connect(); (…) app.get('/api', function (req, res) { res.send('PS API is running'); }); […]

无法从本地节点应用程序以sequelize连接到heroku postgresql数据库

我试图从Sequelize的本地nodejs应用程序连接到Heroku postgresql数据库。 我遵循这两个指南,一切都在英雄服务器端的工作完全正常,但我的节点应用程序将不会连接到heroku当我在我的Mac本地运行它。 http://sequelizejs.com/articles/heroku https://devcenter.heroku.com/articles/connecting-to-heroku-postgres-databases-from-outside-of-heroku 以下是我如何启动本地应用程序: DATABASE_URL=$(heroku config:get DATABASE_URL) nodemon 得到我: Sequelize: Unable to connect to the database: 但是我通过这样做得到正确的URL: echo $(heroku config:get DATABASE_URL) 这些命令工作正常: heroku pg:psql psql $(heroku config:get DATABASE_URL) 这是我的nodejs代码: var match = process.env.DATABASE_URL.match(/postgres:\/\/([^:]+):([^@]+)@([^:]+):(\d+)\/(.+)/) sequelize = new Sequelize(match[5], match[1], match[2], { dialect: 'postgres', protocol: 'postgres', port: match[4], host: match[3], logging: false }) sequelize .authenticate() […]