packages needed
- convert-csv-to-json : csv 용 모듈
- apollo-server
- graphql
const database = require("./database");
const { ApolloServer, gql } = require("apollo-server");
const typeDefs = gql`
type Query {
teams: [Team]
}
type Team {
id: Int
manager: String
office: String
extension_number: String
mascot: String
cleaning_duty: String
project: String
}
`
const resolvers = {
Query: {
teams: () => database.teams
}
}
const server = new ApolloServer({ typeDefs, resolvers });
server.listen().then(( {url} ) => {
console.log("Server ready at", url)
})
ApolloServer
- typeDef, resolver를 인자로 받아 서버 생성
typeDef
- graphQL 명세에서 사용될 데이터, 요청 타입 지정
- gql(template literal tag)로 생성
resolver
- 서비스의 액션들을 함수로 지정
- 요청에 따라 데이터를 반환, 입력, 수정, 삭제
GraphQL Playground
- 작성한 GraphQL type, resolver 명세 확인