Я следую руководству и пытаюсь запустить сервер узла, и я не могу импортировать его в функции из пакета Apollo.
const {graphqlExpress, graphiqlExpress} = require('apollo-server-express'); // here i importing fucntions
const bodyParser = require('body-parser'); // import parser
const cors = require('cors'); // import cors
const express = require('express'); // import cors
const { makeExecutableSchema } = require('graphql-tools');
const port = 9000; // define port
const schema = makeExecutableSchema({typeDefs, resolvers}); // init shcema
const app = express();
app.use(cors(), bodyParser.json());
app.use('/graphql', graphqlExpress({schema})); // is not a function
app.use('/graphiql', graphiqlExpress({endpointUrl: '/graphql'})); // is not a function
app.listen(port, () => console.info(`Server is running on the port ${port}`));
Когда я запускаю сервер, если происходит сбой из-за того, что «graphqlExpress не является функцией», и когда он прокомментировал и перезапустил сервер, то же самое и с graphiqlExpress. Может быть, руководство, которому я следую, устарело, и apollo-server-express больше не предоставляет таких функций?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


В Apollo Server 2.0 внесен ряд критических изменений с целью упрощения настройки. В документации есть руководство по миграции, в котором описаны изменения. Если все, что вам нужно, это сервер GraphQL, начать работу можно так просто:
const { ApolloServer, gql } = require('apollo-server');
const server = new ApolloServer({ typeDefs, resolvers });
server.listen()
Обратите внимание, что выше просто используется пакет apollo-server. apollo-server-express все еще существует, если вы хотите продолжать использовать Apollo в качестве промежуточного программного обеспечения Express вместо запуска Apollo в качестве «автономного» сервера.
const { ApolloServer, gql } = require('apollo-server-express');
const app = require('express')();
const server = new ApolloServer({ typeDefs, resolvers });
server.applyMiddleware({ app });
app.listen({ port: 3000 })
Новый API устраняет необходимость отдельно импортировать и внедрять дополнительное промежуточное ПО, такое как body-parser или cors. Прочтите документацию для получения дополнительной информации о том, как настроить экземпляр Apollo Server.