摘要:每個接口做多帶帶的開發卻又古老而不合時宜。所以的出現是為了更好的降低數據之間的網狀關系帶來的開發復雜度。
GraphQL 什么是GraphQL
Facebook開源的一個數據查詢語言
1、GraphQL是一門語言,有自己的語法,這點和其他編程語言是類似的
2、GraphQL是一個runtime,可以認為它是一個運行在服務器上的可以理解和響應使用GraphQL語言的請求應用程序,類似一個服務端的GraphQL翻譯
RESTful Api的弊端隨著應用的擴展,被逐漸放大,比如接口調用次數增多,耗時太長。每個接口做多帶帶的開發卻又古老而不合時宜。所以GraphQL的出現是為了更好的降低數據之間的網狀關系帶來的開發復雜度。
如何使用一個簡單的GraphQL的語法案例如下,就是一個輸入格式如下(不是JSON)
{ user(id: 42) { firstName lastName email } }
會被轉換成如下輸出
{ "data": { "user": { "firstName": "John", "lastName": "Doe", "email": "john@example.com" } } }
這可以看做是一次請求響應的過程
一個查詢定義如下
const queryType = new GraphQLObjectType({ name: "RootQuery", fields: { hello: { type: GraphQLString, resolve: () => "world" } } }); const mySchema = new GraphQLSchema({ query: queryType }); const inputQuery = `{ hello }` graphql(mySchema, inputQuery).then(result => { console.log("Server Answer :", result.data); });
打印log如下
Server Answer : { hello: "world" }
GraphQL內置一些基礎數據類型,然后可以自定義復雜數據類型,數據類型之間可以互相嵌套和引用,這就可以組成可配置的數據結構
GraphQL是一門強類型的語言,每個字段都必須要要有嚴格的格式約束
這門語言有很多種編程語言的實現,graphql.js就是其中一種
對于前端而言,最簡單的使用過程就是拼接上文的hello這樣子的Query,來查詢數據
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/82640.html
摘要:不過今天我希望能夠更進一步,不僅僅再抱怨現狀,而是從我個人的角度來給出一個逐步深入學習生態圈的方案。最后,我還是想提到下對于的好的學習方法就是回顧參照各種各樣的代碼庫,學習人家的用法與實踐。 本文翻譯自A-Study-Plan-To-Cure-JavaScript-Fatigue。筆者看到里面的幾張配圖著實漂亮,順手翻譯了一波。本文從屬于筆者的Web Frontend Introduc...
摘要:用和創建一個靜態博客翻譯和自己探索過程中的經驗總結原文參閱或本篇主要是對其精華內容進行翻譯以及實操過程中遇到的問題解決和探索一些具體的操作步驟和細節我將忽略結合原文一起閱讀效果更佳注本文操作環境是介紹這是一個包含很多靜態內容頁面的站點從技術 用Gatsby和Strapi創建一個靜態博客(翻譯和自己探索過程中的經驗總結) 原文參閱: Building a static blog usin...
摘要:初始化項目使用初始化項目安裝項目結構如下接口所有接口對封裝接下來對進行封裝,加上中間件實現類似于攔截器的效果。 Graphql嘗鮮 在只學習graphql client端知識的過程中,我們常常需要一個graphql ide來提示graphql語法,以及實現graphql的server端來進行練手。graphql社區提供了graphiql讓我們使用 graphiql (npm):一個交互...
摘要:另外,團隊更加友好的類型檢查極大方便了后端的開發。初步的性能測試無讀寫操作的接口響應時間在本地,讀寫操作接口響應時間在,已經遠低于之前版本的。并發量預估也會有不小的提升。 2.0-alpha1 預覽版本 這個版本主要用于預覽后臺,一些接口還沒對接。 Adonis.js 到 Nest.js AonisJS 是一個 Node.js 版的 Laravel ,起初是打算用 AdonisJS,...
閱讀 3210·2023-04-26 02:27
閱讀 2138·2021-11-22 14:44
閱讀 4082·2021-10-22 09:54
閱讀 3195·2021-10-14 09:43
閱讀 748·2021-09-23 11:53
閱讀 12675·2021-09-22 15:33
閱讀 2704·2019-08-30 15:54
閱讀 2681·2019-08-30 14:04