本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 GraphQL 查詢從 AWS AppSync 主控台的 DynamoDB 資料表擷取資料
現在資料庫中存在記錄,您會在執行查詢時取得結果。查詢是 GraphQL 的其他基本操作之一。它用於從您的資料來源剖析和擷取資訊。在 REST 方面APIs,這與 GET
操作類似。GraphQL 查詢的主要優點是能夠指定應用程式的確切資料需求,以便您適時擷取相關資料。
查詢資料來源
-
如果您尚未這麼做,請登入 AWS Management Console 並開啟AppSync 主控台
。 -
API 從資料表中選擇您的 。
-
在左側的索引標籤中,選擇查詢 。
-
在資料表左側的 Explorer 索引標籤中,在
query
下listTodos
展開getTodo
操作: -
在程式碼編輯器中,您應該會看到操作程式碼:
query listTodos { getTodo(id: "") { description id name when where }
在 中
(id:"")
,填入您在突變操作結果中儲存的值。在我們的範例中,這將是:query listTodos { getTodo(id: "
abcdefgh-1234-1234-1234-abcdefghijkl
") { description id name when where } -
選擇執行 ,然後選擇 listTodos。結果會顯示在編輯器的右側。我們的範例如下所示:
{ "data": { "getTodo": { "description": "I need to buy eggs", "id": "abcdefgh-1234-1234-1234-abcdefghijkl", "name": "Shopping List", "when": "Friday", "where": "Home" } } }
注意
查詢只會傳回您指定的欄位。您可以從傳回欄位中刪除不需要的欄位,以取消選取這些欄位:
{ description id name when where }
您也可以取消核取要刪除之欄位旁的 Explorer 索引標籤中的方塊。
-
您也可以重複這些步驟,在資料來源中建立項目,然後使用
listTodos
操作重複查詢步驟,以嘗試listTodos
操作。以下是我們新增第二個任務的範例:{ "createtodoinput": { "name": "Second Task", "when": "Monday", "where": "Home", "description": "I need to mow the lawn" } }
透過呼叫
listTodos
操作,它會傳回舊項目和新項目:{ "data": { "listTodos": { "items": [ { "id": "abcdefgh-1234-1234-1234-abcdefghijkl", "name": "Shopping List", "when": "Friday", "where": "Home", "description": "I need to buy eggs" }, { "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "name": "Second Task", "when": "Monday", "where": "Home", "description": "I need to mow the lawn" } ] } } }