

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# SPARQL 쿼리 취소
<a name="sparql-api-status-cancel"></a>

SPARQL 쿼리의 상태를 가져오려면 HTTP `GET` 또는 `POST`를 사용하여 `https://your-neptune-endpoint:port/sparql/status` 엔드포인트에 대한 요청을 생성합니다.

## SPARQL 쿼리 취소 요청 파라미터
<a name="sparql-api-status-cancel-request"></a>

**cancelQuery**  
(필수) 상태 명령을 해서 쿼리를 취소합니다. 이 파라미터는 값을 갖지 않습니다.

**queryId**  
(필수) 취소하려는 실행 중 SPARQL 쿼리의 ID.

**적용 안 됨**  
(선택 사항) `silent=true`이면 실행 중인 쿼리가 취소되고 HTTP 응답 코드가 200이 됩니다. `silent`가 존재하지 않거나 `silent=false`인 경우에는 HTTP 500 상태 코드를 통해 쿼리가 취소됩니다.

## SPARQL 쿼리 취소 예제
<a name="sparql-api-status-cancel-example"></a>

**예제 1: `silent=false`을 통한 취소**  
다음은 `silent` 파라미터가 `false`으로 설정된 상태에서 쿼리를 취소하기 위해 `curl`을 사용하는 상태 명령의 예제입니다.

```
curl https://your-neptune-endpoint:port/sparql/status \
  -d "cancelQuery" \
  -d "queryId=4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47" \
  -d "silent=false"
```

쿼리가 이미 결과 스트리밍을 시작한 경우가 아니라면, 취소된 쿼리는 다음과 같은 응답으로 HTTP 500 코드를 반환할 것입니다.

```
{
  "code": "CancelledByUserException",
  "requestId": "4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47",
  "detailedMessage": "Operation terminated (cancelled by user)"
}
```

쿼리가 이미 HTTP 200 코드(OK)를 반환하고 취소되기 전에 결과를 스트리밍하기 시작한 경우, 제한 시간 예외 정보가 일반 출력 스트림으로 전송됩니다.

**예제 2: `silent=true`을 통한 취소**  
다음은 `silent` 파라미터가 `true`로 설정된 경우를 제외하고 위와 동일한 상태 명령의 예제입니다.

```
curl https://your-neptune-endpoint:port/sparql/status \
  -d "cancelQuery" \
  -d "queryId=4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47" \
  -d "silent=true"
```

이 명령은 `silent=false`일 때와 동일한 응답을 반환하지만, 취소된 쿼리는 이와 같은 응답과 함께 HTTP 200 코드를 반환합니다.

```
{
  "head" : {
    "vars" : [ "s", "p", "o" ]
  },
  "results" : {
    "bindings" : [ ]
  }
}
```