iT邦幫忙

2022 iThome 鐵人賽

DAY 23
0
Modern Web

Full Stack Web Development 網站實作系列 第 23

Day 23 GraphQL(2) - Apollo Server

  • 分享至 

  • xImage
  •  

Server:
用 Apollo Server library 來建立 GraphQL server。
新增 GraphQL-server 目錄,安裝 apollo-server 和 graphql。

npm init -y
npm install apollo-server graphql

新增 GraphQL-server/server.js,來定義我們的 GraphQL schema,這 schema 將描述我們的 API 可以提供甚麼服務:
定義 schema

// Schema definition
const { gql } = require('apollo-server');

const typeDefs = gql`    // 以下使用 GraphQL Schema Definition Language 
  type Query {           // 定義一個名為 Query 的 type
    greeting: String     // 定義屬於這個 type 的欄位(fields)
  }
`;

console.log(typeDefs);

執行 node server.js,到 console 看這個 object 的內容。可以看到 typeDefs 是一個 JavaScript object。

接下來,完成定義在 schema 的功能:client 可以呼叫(call) server 然後獲得 greeting。

const { ApolloServer, gql } = require('apollo-server');

const typeDefs = gql`
  type Query {
    greeting: String
  }
`;

const resolvers = {
  Query: {
    greeting: () => 'Hello world!'
  }
}

上一篇
Day 22 GraphQL (1) - Apollo Server
下一篇
Day 24 GraphQL (3) - Apollo Server 和 Client
系列文
Full Stack Web Development 網站實作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言