GitHub GraphQL API目前正式可用。InfoQ采訪了GitHub的高級工程經理Kyle Daigle。
GitHub在去年的GitHub Universe大會上發布了GraphQL,旨在為GitHub API添加更多的靈活性。GraphQL最主要的優勢在于定義數據需求的能力,有可能使用單個調用替代多個REST請求。另外,GraphQL的schema是強類型和自省的。
InfoQ采訪了GitHub的高級工程經理Kyle Daigle,了解有關GraphQL的發展和未來。
GitHub在去年10月提供了GraphQL API的早期預覽版,到目前為止(V4)它有哪些變化?有哪些已經實現的新特性,出現了哪些新的需求,以及社區對其做出了哪些貢獻?開發者們對此有什么反應?
從去年在GitHub Universe上發布早期預覽版以來,開發者對新的GraphQL API感到非常興奮。集成商因此找到了更多高效的方式來訪問數據。我們在為GitHub增加新的特性時,也使用了GraphQL API。開發者與我們的工程師使用的是相同的API來獲取數據,他們非常喜歡這種方式。
與此同時,GitHub仍然沒有停止REST API(V3)的開發工作。它們之間是如何相互堆積起來的?你認為在未來某個時刻V3會被廢棄嗎?
目前,我們通過觀察集成商和開發者對GraphQL API的使用情況來對新的V4 API做出改進。我們正在努力讓GraphQL成為REST API的后盾,讓REST API變得更強大。在接下來的幾個月,我們會在GraphQL API里加入更多的數據,盡可能讓它提供與REST API相同的數據。
現在能否對GraphQL在外部的使用情況做一些總結?它是如何做到更好的伸縮性、類型安全和自省的?
在大型的社區,GraphQL被廣泛地采用。GraphQL EU和GraphQL峰會成為大型的年度會議,各種規模的公司在這兩個大會上談論GraphQL。GraphQL可以讓集成商更快地開發功能,它的類型系統清晰地定義了API所能提供的功能特性。GitHub會幫助GraphQL社區不斷成長,我們很高興能夠帶著我們運行第一個公開版本的經驗回過頭來幫助社區。
要更多地了解GraphQL,可以從官方文檔和教程開始。
查看英文原文: GitHub GraphQL API is Out of Early Access