Проблема с развертыванием только сервера Apollo к героку - PullRequest
0 голосов
/ 27 мая 2019

Я развертываю сервер Apollo для своей базы данных на heroku, и он выдает ошибку приложения.Это не просто показывает, что есть проблема с маршрутом get, это говорит о том, что в приложении есть ошибка, а в журналах ошибок указано, что приложение падает.Локально работает.

Я настроил procfile с: web: node app.js.Я попробовал это с удаленным procfile.Я установил игровую площадку и самоанализ на истину.Я видел, что это может быть проблемой, но, похоже, это не помогло.Порт настроен на process.env.PORT ||8080.

Вот минимальный код:

const { ApolloServer } = require('apollo-server-express');
const express = require('express');
const db = require('./models');
const typeDefs = require('./data/schema');
const resolvers = require('./data/resolvers');

const app = express();

const server = new ApolloServer({
  typeDefs,
  resolvers,
  context: { db },
  introspection: true,
  playground: true,
});

server.applyMiddleware({ app });

const PORT = process.env.PORT || 8080;

app.get('/', (req, res) => {
  res.send('hello');
});

app.listen(PORT, () => {
  console.log(`Server is ready at ${PORT}`);
});

Я также использую некоторые другие функции (пытаюсь настроить процесс cron), но они закомментированы.

Я бы ожидал получить маршрут / get, чтобы хотя бы сказать «привет», или маршрут / graphql для отображения игровой площадки.Я не получаю ни одного из этих вариантов.

1 Ответ

0 голосов
/ 27 мая 2019

Оказывается, мне нужно было добавить следующее в package.json:

    "scripts": {
        "start": "app.js",
        ...
    }

И мне нужно было установить пакеты, перечисленные в логах heroku --tail, но у меня были такие ошибки раньше. Запись ключа запуска сценария в файл package.json предназначен для развертывания сервера независимо от вашей реакции (или клиента).

...