기존에 apollo-server 를 사용하면 쉽고 빠르게 qraphql 서버를 구축할 수 있다
하지만 서버를 qraphql 말고 rest 방식을 지원하거나 내부 퍼블릭 파일에 접근하기가 어렵다
그래서 express 기반의 서버에 apollo-server-express 미들웨어를 지원하는 방식으로 변경한다
npm remove apollo-server
기존에 사용한 apollo-server 삭제
npm i express apollo-server-express
앞으로 사용할 라이브러리 추가
const app = express();
express 초기화
const server = new ApolloServer({
typeDefs,
resolvers,
});
apollo server 초기화
await server.start();
aws lambda 와 같은 서버리스 서비스 사용시 추가
server.applyMiddleware({ app });
아폴로 서버에 express 와 같이 동작한다고 알려주는 메서드
app.listen({ port: PORT });
console.log(`🚀 Server ready at http://localhost:4000${server.graphqlPath}`);
서버를 띄운다
로그가 잘 나온다
참고
https://www.apollographql.com/docs/apollo-server/integrations/middleware/#applying-middleware