Articles of heroku

快递应用程序:webpack bundle.js不提供

我是使用express开发应用程序的新手,我正在使用Node-Express-Angular4和Postgres创build应用程序。 我正在使用webpack来构build应用程序,并将其部署到heroku。 以下是我的app.js文件 app.js var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var appRoutes = require('./routes/app'); var eventRoutes = require('./routes/events'); var userRoutes = require('./routes/user'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'hbs'); app.use(favicon(path.join(__dirname, […]

我应该caching数据在我的服务器还是只依靠MongoDB

我有一个在Heroku上运行的网站,我使用Mongo Atlas作为我的数据库。 我已经testing了mongo连接速度,根据数据我发现它的大约5ms到20ms注意:Heroku应用程序和Mongo Atlas都在相同的aws区域。 现在我的问题是我有我的用户频繁查询约10Klogging的集合。 对于这个用例,我应该caching这些10Klogging在服务器或者我应该把它留给MongoDB和生活在~15ms的开销? 你怎么看?

Heroku中的外部文件中的angular度路由

我一直在研究一个相对简单的MEAN栈应用程序,现在想用Heroku来托pipe它。 我90%的方式,但我似乎无法获得状态/页面路由工作。 如果有帮助,我使用Yeoman,Gulp和Bower。 当然,它在当地工作正常,但我找不到有关指定Heroku的路由器文件的信息。 我有一种感觉,我可能会错过一个简单的“server.use()”语句,但它也可能是我需要在我的package.json中做出的变化。 我已经尝试在版本库中包含dist /文件夹,因为很多论坛都提到这个问题,但没有任何结果。 后端工作正常(除了使用mLab),所以Heroku的应用程序至less有点configuration正确。 这是我的服务器: // Modules var gzippo = require("gzippo"); var express = require("express"); var server = express(); var bodyParser = require('body-parser'); var mongo = require('mongodb'); var mongoose = require('mongoose'); // Controllers and Services var topic = require('./controllers/topic'); var auth = require('./controllers/auth'); var cors = require('./services/cors'); // Middleware server.use(cors); server.use(bodyParser.json()); […]

使用Express进行Vue.js路由

我在这里创build了一个组合https://temp-portfolio.herokuapp.com 。 我的问题是,当用户刷新除index.html以外的页面或直接到另一个链接,如https://temp-portfolio.herokuapp.com/projects路由不呈现。 我已经使用Node.js和Express在Heroku按照本指南设置了一切https://medium.com/@sagarjauhari/quick-n-clean-way-to-deploy-vue-webpack-apps-on-heroku- b522d3904bc8 。 我试图重写服务器到这个https://stackoverflow.com/a/44226999/4178637,但应用程序崩溃。 server.js var express = require('express'); var path = require('path'); var serveStatic = require('serve-static'); app = express(); app.use(serveStatic(__dirname)); var port = process.env.PORT || 5000; app.listen(port); console.log('server started '+ port); index.js import Vue from 'vue' import Router from 'vue-router' import Nav from '@/components/Nav' import Home from '@/components/Home' import Projects from […]

整合testing在Heroku爱好开发中偶尔超时

由于我们没有从help.heroku.com得到任何有用的支持,我们在这里做最后的尝试。 我们正在开发一个经典的networking应用程序,包括: —– —– —- |WEB| <—-> |API| <—-> |DB| —– —– —- 我们目前正在与以下Heroku Dynos / Datastores合作 Heroku Postgres:业余爱好基础 Heroku API Dyno:业余爱好 Heroku WEB Dyno:业余爱好 技术堆栈是: 运行时:nodejs(4.4.0) db:postgres(9.6.1) testframework:jasminejs(2.5.1) 查询生成器:knexjs(0.10.0) 我们最近从自托pipedocker环境迁移到Heroku,并configuration了Herokus CIpipe道,这对于unit testing来说工作正常 – 但不是集成testing。 testing偶尔失败(平均每次同一提交的第三次testing)。 这不足以build立CI / CD。 这里是我们得到的错误信息: ************************************************** * Failures * ************************************************** 1) integration test collections repository create() should return AUTHENTICATION_REQUIRED if […]

PostgreSQL 9.6.1数据库不显示在Heroku应用程序

我在Herokutesting应用程序中configuration了一个PostgreSQL数据库。 导航到URL / db不显示testing数据库,返回错误不能GET / db 。 Papertrail日志条目: https://papertrailapp.com/systems/glacial-bayou-96122/events?focus=833501717949202435&selected=833501717949202435 我已经包括了我提供数据库的步骤,并在下面列出了相关的代码。 我已经更新了我的package.json文件来添加pg npm module { "name": "node-js-getting-started", "version": "0.2.6", "description": "A sample Node.js app using Express 4", "engines": { "node": "6.11.1" }, "main": "index.js", "scripts": { "start": "node index.js", "test": "node test.js" }, "dependencies": { "ejs": "2.5.6", "express": "4.15.2" }, "dependencies": { "pg": "6.x", "ejs": "2.5.6", […]

如何使用Node.js和邮递员将file upload到cloudinary

我通过POSTMAN使用Node js上传文件。 这里我需要把file upload到cloudinary 。 我的邮递员截图如下。 我在下面解释我的代码。 var multer = require('multer') var cloudinary = require('cloudinary'); cloudinary.config({ cloud_name: 'sample', api_key: '874837483274837', api_secret: 'a676b67565c6767a6767d6767f676fe1' }); var storage =multer.diskStorage({ destination: function (req, file, callback) { callback(null, './uploads'); }, filename: function (req, file, callback) { callback(null, Date.now()+'-'+file.originalname); } }); var upload = multer({ storage : storage }); app.post('/api/users/save-card-file',upload.single('file'), function […]

在Heroku上启用https

我有一个在Heroku上运行的应用程序,带有一个简单的API的Node.js后端和一个React.js前端。 请求代理到后端( http://localhost:5000 )。 当我从React ping API时,出现以下错误: Mixed Content: The page at 'https://**.herokuapp.com/users' was loaded over HTTPS, but requested an insecure resource 'http://localhost:5000/api/users'. This request has been blocked; the content must be served over HTTPS. 我怎样才能使资源安全?

错误:使用Next.js在Heroku上产生EACCES

当我尝试将我的Next.js项目推送到Heroku时,出现以下错误。 它在本地正常工作。 另外我以前的提交在Heroku上工作。 我现在试图将新版本的项目推到Heroku,package.json没有改变,我得到以下错误: remote: Compressing source files… done. remote: Building source: remote: remote: —–> Node.js app detected remote: remote: —–> Creating runtime environment remote: remote: NPM_CONFIG_LOGLEVEL=error remote: NPM_CONFIG_PRODUCTION=true remote: NODE_VERBOSE=false remote: NODE_ENV=production remote: NODE_MODULES_CACHE=true remote: remote: —–> Installing binaries remote: engines.node (package.json): unspecified remote: engines.npm (package.json): unspecified (use default) remote: remote: Resolving node version […]

NodeJS:Heroku ClearDB不closures连接

我在Heroku上部署了一个NodeJS API,并尝试将它连接到一个MySQL数据库,所以我创build了一个connectionPool来处理ClearDB点火帐户(免费)上的连接,最多允许10个连接。 每次我执行一个查询到数据库,它只是添加一个新的连接到堆栈,直到它达到10个连接和应用程序崩溃。 我的代码如下: connectionFactory的: var mysql = require('mysql'); function createDBConnection() { var conn = mysql.createPool({ host: 'xxx', user: 'xxx', password: 'xxx', database: 'xxx' }); return conn; } module.exports = function() { return createDBConnection; } 这里是我的select查询: function Dao(connection) { this._connection = connection; } Dao.prototype.findAll = function (callback) { this._connection.query('SELECT * FROM table', function(errors, results) { […]