如何在Heroku中以生产模式修复mongo db问题?

时间:2019-04-08 19:22:19

标签: node.js mongodb heroku

我只是试图将我的应用程序推送到Heroku上-它由node.js服务器和客户端中的react应用程序组成。 该服务器已链接到Atlas Mongo数据库。

在本地开发中一切正常。

但是在生产模式下,推送项目后(Heroku毫无问题地部署了项目),当我运行生产url时,它崩溃了,const AWS = require('aws-sdk'); const fs = require('fs'); const child_process = require("child_process"); const exec = require('child_process').exec; var s3 = new AWS.S3(); var filePath = '../Desktop/Certs/' var bucketName = 'neb.certificates' //replace example bucket with your s3 bucket name var params = { Bucket: bucketName, Prefix: 'dev/jenkins.secure.care/', }; s3.listObjectsV2(params, async function(err, data) { if (err) console.log(err, err.stack); // an error occurred else { // console.log(data.Contents) var len = data.Contents.length for(var i=0; i<len; i++){ var key = data.Contents[i]["Key"] var newPath = filePath.concat(key.substring(31)) const downloadFile = (newPath, bucketName, key) => { //construct getParam var getParams = { Bucket: bucketName, Key: key }; return s3.getObject(getParams).promise(); }; const downloadData = await downloadFile(newPath, bucketName, key).catch(console.error); fs.writeFileSync(newPath, downloadData.Body.toString()); console.log(newPath, 'created'); } //rename files console.log('renaming first cert.pem'); exec('mv ../Desktop/Certs/cert.pem ../Desktop/Certs/jenkins.crt', (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(stdout); }); console.log('renaming second privkey.pem'); exec('mv ../Desktop/Certs/privkey.pem ../Desktop/Certs/jenkins.key', (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(stdout); }); } }); 告诉了以下内容: heroku logs --tail

我也尝试卸载/重新安装node_modules和mongoose软件包,但这无济于事...

关于如何解决该错误的任何想法?

0 个答案:

没有答案