您准备好观看GraphQL了吗?
在上一篇文章中,我們討論了GraphQL與REST相比的優勢。 在本文中,我們將看到GraphQL的實際應用。 我創建了一個示例應用程序來展示REST和GraphQL之間的差異。 首先,我們將看到簡單產品詳細信息終點的REST實現。 我已經使用Spring Boot演示REST。 下載示例項目,并按照README中概述的步驟設置項目。 我不在這里討論設置細節,因為它超出了本文的范圍。 假設您的項目已啟動并正在運行,以調用http:// localhost:8080 / product / {product_id}端點以獲取產品詳細信息JSON,如下所示。
如果您在JSON之上看到,雖然我們對給定產品的所有元素都不感興趣,但我們正在獲取包括評論和技術規格在內的整個產品JSON。
現在,我們將通過有選擇地獲取產品詳細信息來了解GraphQL的實際應用。 為了再次演示GraphQL,我使用了Spring Boot。 下載示例項目,并按照README中概述的步驟設置項目。 我不在這里討論設置細節,因為它超出了本文的范圍。 假設您的項目已啟動并正在運行,以查看GraphQL的實際效果。 在這種情況下,我只想獲取給定產品的產品ID,標題,簡短描述和標價。 讓我們看看如何查詢以獲取感興趣的詳細信息。
現在,作為服務消費者,我有興趣獲取產品ID,標題,簡短描述,標價和評論。 在這種情況下,GraphQL提供了查詢所需內容的靈活性。 當我們使用GraphQL時,請參見下面的查詢和響應。
為了演示GraphQL,我使用了基于GUI的插件GraphiQL。 為了從其他應用程序消費,我們可以在application.properties中配置端點。
graphql.servlet.mapping=/graphql graphql.servlet.enabled=true graphql.servlet.corsEnabled=true現在,我們可以通過傳遞URL編碼的查詢參數來調用上述端點,如下所示。 您可以了解有關查詢和變異的更多信息https://graphql.org/learn/queries/
希望您喜歡這篇文章。 我將再來另一篇文章。 直到那時, 快樂學習!!!
翻譯自: https://www.javacodegeeks.com/2019/03/ready-see-graphql-action.html
總結
以上是生活随笔為你收集整理的您准备好观看GraphQL了吗?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JMetro版本5.3已发布
- 下一篇: vert.x_选择Vert.x的3个理由