GraphQL 工具
本文章,會列舉一些好用的 GraphQL 工具,他們可以大大提升你在開發中使用 GraphQL 的效率哦!
Prisma
你可以這麼理解,Prisma 是一個 ORM 的庫,讓你使用 GraphQL 查詢時,可以使用對象的形式去查詢,而不需要使用查詢語句去查詢,非常方便,而且 Prisma 還擁有以下特點:
- Prisma 支持很多數據庫,比如 Mysql、PostgreSQL、MariaDB 等數據庫,以後還會支持更多
- 對 Typescript、JavaScript、Go 都有非常好的支持
- 內置了一些 CURD 的功能
Relay
Relay 是一個 JavaScript 庫,由 Facebook 開發,比較多的用在 React 開發中,在 React 開發時,可以使用 Relay 去對 GraphQL 進行增刪改查,非常方便。
Relay 具有三個模塊:
- Compiler:編譯器,負責分析、驗證、優化
- Runtime:GraphQL 的運行環境
- Relay/React:Relay 與 React 集成在一起
Apifox
根據官方的介紹,Apifox 是這樣的一款工具
- 集成了API 文檔、API 調試、API Mock、API 自動化測試 API 一體化協作平台
- 擁有更先進的 API 設計/開發/測試工具
- Apifox = Postman + Swagger + Mock + JMeter
我用了一圈下來,發現 Apifox 的功能確實很多
- 支持接口文檔、在線接口文檔分享
- 支持本地 Mock、雲端 Mock 功能
- 支持 自動化測試,包括測試用例、測試套件功能
- 支持中文顯示,且免費使用
- 支持可視化校驗、可視化數據庫連接
- 擁有 IDEA 插件 Apifox Helper
- 擁有命令行工具 apifox-cli,可以使用命令行運行測試用例
Apollo
Apollo 是一個 JavaScript 的狀態管理庫,類似於 redux、vuex 這類,Apollo 能讓你輕鬆調用 GraphQL 的查詢 API ,並將數據渲染並高效構建UI 組件上。
Apollo 的特性主要有:
- 聲明式的使用,數據檢索、加載、上傳 UI 的邏輯都包含在一個查詢中
- 對 React 很友好,充分利用 React 新特性
- 可以放到 JavaScript 應用中使用,適應性很強
- 可以和任意一種 GraphQL API 一起用,兼容性很強
- GraphQL 和 Apollo 是什麼
Hasura
Hasura 是一款 GraphQL 引擎,性能非常高,主要是為Postgres 數據庫提供 GraphQL API。
Hasura 還具備以下特點:
- 實時查詢非常出色,實時性很強
- 使用方便,開箱即用
- Hasura 具有內置的過濾、分頁、模式搜索、批量插入、更新、刪除突變等功能,查詢功能非常出色
- 更新迭代很快,每次都有新功能
URQL
Foemidable 實驗室推出的一款 GraphQL 客户端,比較貼近 React hook,非常輕量。
它具有以下幾個特點:
- 輕量,性能好
- 支持自定義配置
- 開箱即用
更多關於 GraphQL 知識:
- GraphQL vs RESTful API:如何選擇?
- 從零開始學習 GraphQL:入門指南和教程