передний конец не развертывается в Heroku - PullRequest
0 голосов
/ 12 апреля 2020

Я пытаюсь развернуть свой первый веб-сайт MERN на heroku. Я следовал различным учебным пособиям, но у меня возникли проблемы с подключением внешнего интерфейса к внутреннему, хотя они прекрасно подключаются в режиме разработки.

Просто для пояснения: единственное, что развернуто, - это сторона сервера. Я не могу развернуть интерфейс.

пакет клиента. json прокси:

"proxy": "http://localhost:5000"

Серверный пакет. json:

{
  "name": "pictshare",
  "version": "1.0.0",
  "description": "Image Sharing Application",
  "main": "server.js",
  "scripts": {
    "start": "node server.js",
    "server": "nodemon server",
    "build": "cd client && npm run build",
    "install-client":"cd client && npm install",
    "heroku-postbuild":"npm run install-client && npm run build",
    "client": "npm start --prefix client",
    "dev": "concurrently -n 'server,client' -c 'red, green' \"npm run server\" \"npm run client\""
  },
  "author": "",
  "license": "MIT",
  "dependencies": {
    "bcryptjs": "^2.4.3",
    "body-parser": "^1.19.0",
    "config": "^3.3.1",
    "ejs": "^3.0.2",
    "express": "^4.17.1",
    "express-validator": "^6.4.0",
    "form-data": "^3.0.0",
    "gravatar": "^1.8.0",
    "gridfs-stream": "^1.1.1",
    "jsonwebtoken": "^8.5.1",
    "merge-images": "^1.2.0",
    "method-override": "^3.0.0",
    "moment": "^2.24.0",
    "mongoose": "^5.9.7",
    "multer": "^1.4.2",
    "multer-gridfs-storage": "^4.0.2",
    "node": "^13.12.0",
    "nodemailer": "^6.4.6",
    "path": "^0.12.7",
    "react-draggable": "^4.2.0",
    "request": "^2.88.2"
  },
  "devDependencies": {
    "concurrently": "^5.1.0",
    "minimist": "^1.2.5",
    "nodemon": "^2.0.2"
  }
}

Сервер. js:

const express = require('express');
const connectDB = require('./config/db');
const app = express();
const bodyParser = require('body-parser')

connectDB();

//Initialize Middleware
app.use(express.json({ extended: false }));
app.use(bodyParser.urlencoded({ extended: false }))

app.get('/', (req, res) => res.send('API Running'));

...

app.use('/api/posts', require('./routes/api/posts'));

if (process.env.NODE_ENV === 'production'){
    app.use(express.static('client/build'))
}

const PORT = process.env.PORT || 5000;
app.listen(PORT, () => console.log(`Server started on port ${PORT}`));

Пн goose:

const mongoose = require('mongoose');
const config = require('config');

const db = process.env.MONGODB_URI || config.get('mongoURI');


const connectDB = async () => {
    try {
        await mongoose.connect(db, {
            useNewUrlParser: true,
            useCreateIndex: true,
            useFindAndModify: false,
            useUnifiedTopology: true,
            useNewUrlParser: true,
        });
        console.log('MongoDB Connected...');
    } catch(err) {
        console.error(err.message);
        process.exit(1);
    }
}

module.exports = connectDB;

Я очень ценю любые идеи или точки зрения !! Большое спасибо всем!

...