GraphQL-API를 사용하기 위한 apollo-server
Apollo : GraphQL의 클라이언트 라이브러리
// 폴더 생성
mkdir my-server
// 폴더 안으로 이동
cd my-server
// index.js 설정
touch index.js
// package.json 생성
yarn init
// 설치
yarn add apollo-server graphql
// nodemon으로 refresh 설정
yarn add nodemon
{
"name": "05-02-graphql-api-with-apollo-server",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"type": "module",
"scripts": {
"dev": "nodemon index.js"
},
"dependencies": {
"apollo-server": "^3.11.1",
"graphql": "^16.6.0",
"nodemon": "^2.0.20"
}
}
// const { ApolloServer, gql } = require('apollo-server');
import { ApolloServer, gql } from "apollo-server";
// swagger 같다고 생각하면 쉽다.
const typeDefs = gql`
type Query {
"A simple type for getting started!"
hello: String
}
`;
// api와 같다고 생각하면 쉽다.
const resolvers = {
Query: {
hello: () => "world",
},
};
const server = new ApolloServer({
typeDefs,
resolvers,
});
const port = 3000;
server.listen(port).then(({ url }) => {
console.log(`🚀 Server ready at ${url}`);
});