
Hasura 是一個開源、高性能、多資料來源與嚴謹權限控管的 GraphQL Engine Service。
他可以幫助開發者整合來自不同資料庫、不同服務的資料在同一個 Api 上獲取,並透過 GraphQL 在一次請求中獲得需要的資料。
Hasura 是什麼
一個具有 Gui 介面(正式環境可以關閉) 的 Api Gateway,可以將資料源轉為 GraphQL 或是 Restful Api。
Hasura 能做什麼
Hasura 可以將分散的數種資料源轉變為一組 GraphQL 或是 Restful Api,並且自訂每一個資料欄位的權限。
數據源可以是現有的 GraphQL 或是 Restful Api 的服務。


數據源也可以是多種資料庫。

Hasura 還可以針對不同使用者的權限決定哪些欄位可以訪問

如何開始體驗 Hasura
會有三種方案可供選擇
- 官方的 Hasura Cloud (最簡單,且內建已串聯 Neon DB)
- 第三方的 Nhost (整合度最高)
- 自行使用 Docker 託管 (最自由)
使用 Hasura 的好處
我個人覺得是獨立出了一層供前端調用的 Api 服務,後端服務能夠以最小的成本更換技術,如一開始為了趕上線而使用在資料庫內寫 SP 的方式推上線,而日後由於使用者增加與功能複雜也可以遷移到 Serverless 或是獨立的 Api 服務提供邏輯處理。
而其自動產生 GraphQL CRUD 與針對個別欄位的權限控管可以節省很多開發上的時間,讓工程師可以專注在邏輯的撰寫。
如何入門 Hasura
Hasura 官方文件 是學習 Hasura 的好方法,而之後我也會撰寫使用 Hasura 搭建應用的教學,歡迎持續關注