장기 실행 작업

Dialogflow API의 일부 메서드는 장기 실행 작업을 반환합니다. 이러한 메서드는 비동기적이며 메서드가 응답을 반환하면 작업이 완료되지 않을 수 있습니다. 상태를 확인하거나 작업을 취소할 수 있습니다.

작업 상태 가져오기

다음은 작업 상태를 폴링하는 방법을 보여줍니다. 확인해야 할 작업이 많으면 호출을 비율 제한하거나 목록 메서드를 대신 사용해야 합니다.

REST

Operations 유형의 get 메서드를 호출합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: GCP 프로젝트 ID
  • OPERATION_ID: 작업 ID
  • API_VERSION: v2 또는 v2beta1

HTTP 메서드 및 URL:

GET https://dialogflow.googleapis.com/API_VERSION/projects/my-gcp-project/operations/OPERATION_ID

요청을 보내려면 다음 옵션 중 하나를 펼칩니다.

다음과 비슷한 JSON 응답이 표시됩니다.

{
  "name": "projects/PROJECT_ID/operations/some-operation-name-OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.dialogflow.API_VERSION.SomeOperationType",
    "state": "DONE"
  },
  "done": true,
  ...
}

작업이 완료되면 SUCCESSFULstate 값이 반환됩니다.

작업 나열 및 취소

특정 작업을 가져오는 것 외에도 작업을 나열하고 취소할 수 있습니다. Operations 유형은 listcancel 메서드를 참조하세요.

list 결과에는 현재 태스크와 무관한 작업이 포함될 수 있으므로 결과를 필터링해야 합니다.