我是 GraphQL 的新手,當客戶需要重復查詢多個輸入時,我對最佳實踐感到困惑。例如,假設我有一個 API 可以告訴我哪個城市離 GPS 坐標最近。(抱歉,如果這有錯誤,但你明白了)
type Query {
locate(gps: GPS!): City!
}
現在假設我的客戶有幾百個它想要定位的 GPS 坐標。發出數百個請求顯然是非常低效的。我應該做一個可以定位一堆坐標的查詢嗎?或者以其他方式批量處理它們?
type Query {
locate(gps: GPS!): City!
locateMultiple(gpss: [GPS]!): [City]!
}
這似乎與 GraphQL 的想法背道而馳,但我還是新手。另外,就背景關系而言,我不打算使用 Apollo(Haskell 后端和 iOS 前端,我正在研究 SwiftGraphQL),但如果需要,我可能可以創建一個簡單的批處理系統(對回應陣列的請求陣列) .
你會怎么做?
uj5u.com熱心網友回復:
這不是向/從 GraphQL API 接收或發送輸入串列的反模式,我想知道這可能是對立的。我想你在這里有一個誤解。
當客戶端和 Web 服務共享資訊時,這是非常常見的,我看不出有任何理由有如此巨大的限制。
這是為了更有效地通過物件發送請求,并且比撰寫批處理系統更簡單。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/427305.html
