GraphQL 查詢驗證器
在傳送 GraphQL 查詢、變更和片段之前,先根據結構描述檢查它們。貼上 SDL 或 introspection JSON,即可查看支援的驗證失敗項目及其行列位置。
操作最多 200,000 個字元,結構描述最多 1,000,000 個字元,變數最多 200,000 個字元。文件最多 100,000 個權杖和 64 層巢狀,結構描述最多 10,000 個型別。驗證在瀏覽器背景工作執行緒中執行,不會向 GraphQL 伺服器傳送任何內容。可下載 JSON 報告和錯誤 CSV 清單。 查詢、變更、訂閱和片段。將結構描述放入 Schema 欄位。 最多 200,000 個字元。 執行前請檢查設定。
處理結果
GraphQL 查詢驗證器
- 在主要輸入欄中貼上 GraphQL 操作和片段。
- 在 Schema 欄位中以 SDL 或 introspection JSON 格式貼上結構描述。
- 可選擇新增 JSON 物件格式的變數。
- 執行檢查,然後逐項檢閱失敗規則並下載 JSON 或 CSV 報告。
使用須知
操作最多 200,000 個字元,結構描述最多 1,000,000 個字元,變數最多 200,000 個字元。文件最多 100,000 個權杖和 64 層巢狀,結構描述最多 10,000 個型別。驗證在瀏覽器背景工作執行緒中執行,不會向 GraphQL 伺服器傳送任何內容。可下載 JSON 報告和錯誤 CSV 清單。
檢查項目
驗證器會檢查支援的欄位和回傳型別規則、葉節點和物件選取、引數及必要引數、片段名稱、目標、循環和未使用片段、值和輸入物件(包括 @oneOf)、指令及其位置,以及變數定義、使用和型別。新增變數後,也會根據宣告型別檢查其值。以下限制說明自訂實作的能力範圍。
運作方式
Happytails.ai 使用自有的受限 GraphQL 剖析器和驗證器,而非 graphql-js。它會跨片段和合併後的子選取比較回應名稱衝突,包括回傳形狀、引數和互斥物件分支。__schema 和 __type 必須包含選取集,但不會驗證其 introspection 子欄位。這並非完整的 GraphQL 實作。
報告說明
每個錯誤都會列出規則、簡短說明,以及操作中的行號和欄號。結構描述本身必須可用:若缺少 Query 型別,或欄位指向未定義型別,檢查會顯示訊息並停止,而不會列出錯誤。