GraphQL 쿼리를 사용하여 AWS AppSync 콘솔의 DynamoDB 테이블에서 데이터 검색
이제 데이터베이스에 레코드가 있으므로 쿼리를 실행하면 결과를 얻게 됩니다. 쿼리는 GraphQL의 다른 필수 작업 중 하나입니다. 데이터 원본에서 정보를 파싱하고 검색하는 데 사용됩니다. REST API의 경우 GET
작업과 유사합니다. GraphQL 쿼리의 주요 장점은 적시에 관련 데이터를 가져올 수 있도록 애플리케이션의 정확한 데이터 요구 사항을 지정할 수 있다는 것입니다.
데이터 원본 쿼리
-
아직 수행하지 않았다면 AWS Management Console에 로그인하고 AppSync 콘솔
을 엽니다. -
테이블에서 API를 선택합니다.
-
왼쪽 탭에서 쿼리를 선택합니다.
-
테이블 왼쪽의 탐색기 탭에서
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 }
삭제하려는 필드 옆의 탐색기 탭에서 확인란을 선택 해제할 수도 있습니다.
-
데이터 원본에 항목을 만드는 단계를 반복한 다음
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" } ] } } }