套件概覽
gql_dedupe_link 套件是 Dart 與 Flutter 的 GraphQL 連結,可透過去重相同的查詢或變更來防止重複的飛行中請求。它確保若在完成前多次發起相同請求,僅執行一次,後續請求將取得第一次執行的結果。這能提升效能並避免冗餘的網路呼叫,特別適用於快速使用者輸入或重複 UI 更新等情境。此連結可與 gql 生態系統無縫整合,並支援所有主要平台。
適用情境
- 防止使用者快速互動時產生重複的 API 呼叫
- 即時資料擷取中的效能最佳化
- 在高頻查詢場景中減少網路負載
- 透過自動儲存或搜尋建議改善表單中的使用者體驗
- 處理併發 GraphQL 操作中的競爭條件
主要特色
- 自動去重相同的飛行中請求
- 與 gql 客戶端的無縫整合
- 支援查詢和變更
- 最小設定需求
- 跨平台相容性
適合對象
- 在Flutter應用中使用gql客戶端的開發者
- 頻繁或重複的 GraphQL 操作的應用程式
- 注重網路效率和使用者體驗回應性的團隊
- 即時或表單密集型應用
- 旨在減少冗餘伺服器負載的項目
使用建議
- 即使操作相同,也可能不會對具有不同變數的請求進行去重
- 不會影響已完成的請求
- 需要正確的變數序列化以實現有效的去重
- 最好與穩定、可預測的查詢結構一起使用
- 限於同一客戶端實例內的去重