GraphQL

| website = GraphQL是一個開源的 ， 面向API而創造出來的數據查詢操作語言以及相應的運行環境 。 於2012年仍處於Facebook內部開發階段 ， 直到2015年才公開發布 。 2018年11月7日 ， Facebook將GraphQL項目轉移到新成立的GraphQL基金會 （ 隸屬於非營利性的Linux基金會 ） 。 GraphQL相較於REST以及其他web service架構提供了一種更加高效 、 強大和靈活的開發web APIs的方式 。 它通過由客戶端根據所需定義數據結構 ， 同時由服務端負責返回相同數據結構的對應數據的方式避免了服務端大量冗餘數據的返回 ， 但與此同時也意味着這種方式不能有效利用起查詢結果的web緩存 。 GraphQL這種查詢語言所帶來的靈活性和豐富性的同時也增加了複雜性 ， 導致簡單的APIs有可能並不適合這種方式 。 GraphQL支持數據讀取 、 寫入 （ 操作 ） 和數據變更訂閱 （ 實時更新 ） 。 主要的GraphQL客戶端有Apollo Client 和 Relay. GraphQL的服務端在多個語言都有實現包括Haskell, JavaScript, Python, Ruby, Java, C#, Scala, Go, Elixir, Erlang, PHP, R, 和 Clojure. 2018年2月9日GraphQL的部分模式定義語言 （ SDL ） 規範制定完成 。