我想知道查詢類型後面的字符串的意義,在這種情況下「ProvisionQueues」,它似乎從字符串中刪除它不影響任何東西 - 只是爲了記錄或什麼。元數據?查詢類型(查詢/突變)後緊跟字符串的意義GraphQL
mutation ProvisionQueues {
createQueue(name: "new-queue") {
url
}
}
我想知道查詢類型後面的字符串的意義,在這種情況下「ProvisionQueues」,它似乎從字符串中刪除它不影響任何東西 - 只是爲了記錄或什麼。元數據?查詢類型(查詢/突變)後緊跟字符串的意義GraphQL
mutation ProvisionQueues {
createQueue(name: "new-queue") {
url
}
}
該字符串是操作名稱。如果您未指定名稱,則該操作被稱爲匿名操作。實際上,我總是指定一個操作名稱,因爲它可以讓讀取堆棧跟蹤等操作更輕鬆。
it seems removing this from the string doesn't affect anything
當您執行單個操作時,您只能使用匿名操作。例如,在一個錯誤的結果如下:
query {
user(id: 1) {
name
}
}
query {
user(id: 2) {
name
}
}
錯誤:
"message": "This anonymous operation must be the only defined operation."
如果您想了解更多,您可以檢查出the GraphQL spec:
If a document contains only one operation, that operation may be unnamed or represented in the shorthand form, which omits both the query keyword and operation name. Otherwise, if a GraphQL query document contains multiple operations, each operation must be named.