프로토콜을 사용하여 HTTP 실행 중인 IIS서버의 콘텐츠에 액세스하는 경우 서버는 요청의 결과와 응답의 특성(성공 또는 실패 포함)을 나타내는 숫자 코드를 반환합니다.
상태 코드의 첫 번째 숫자는 응답 클래스를 분류하지만 마지막 두 자리는 분류 용도를 제공하지 않습니다. 첫 번째 숫자는 5개 값 중 하나일 수 있습니다.
- 1xx (정보 제공): 요청이 수신되고 처리가 계속됨을 나타내는 중간 응답입니다.
- 2xx (성공): 서버가 클라이언트 요청을 성공적으로 수신하고 수락했습니다.
- 3xx (리디렉션): 요청을 완료하려면 추가 작업이 필요합니다.
- 4xx (클라이언트 오류): 클라이언트 브라우저에서 오류가 발생하여 처리할 수 없습니다.
- 5xx (서버 오류): 서버에서 오류가 발생하여 요청이 실패했습니다.
상태 코드
요청을 반환하는 가능한 HTTP 상태 코드는 다음과 같습니다.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공. |
| 400 | 쿼리 매개 변수 중 하나가 없거나 잘못되었습니다. 다시 시도하기 전에 요청 매개 변수를 수정합니다. |
| 401 | 요청을 인증할 수 없습니다. 자격 증명이 지정되고 유효한지 확인합니다. |
| 403 | 요청에 부여된 권한이 없습니다. 세부 정보 오류 메시지를 확인합니다. 이 상태 코드는 평가판 구독과 함께 제공되는 모든 무료 번역을 사용했음을 나타내는 경우가 많습니다. |
| 408 | 리소스가 누락되어 요청을 처리할 수 없습니다. 세부 정보 오류 메시지를 확인합니다. 요청에 사용자 지정 범주가 포함된 경우 이 상태 코드는 사용자 지정 번역 시스템을 아직 요청을 처리할 수 없음을 나타내는 경우가 많습니다. 요청은 대기 기간(예: 1분) 후에 다시 시도해야 합니다. |
| 429 | 클라이언트가 요청 제한을 초과했기 때문에 서버가 요청을 거부했습니다. |
| 500 | 예기치 않은 오류가 발생했습니다. 오류가 지속되면 오류 날짜 및 시간, 응답 헤더 X-RequestId의 요청 식별자 및 요청 헤더 X-ClientTraceId의 클라이언트 식별자를 사용하여 보고합니다. |
| 503 | 서버를 일시적으로 사용할 수 없습니다. 요청을 재시도합니다. 오류가 지속되면 오류 날짜 및 시간, 응답 헤더 X-RequestId의 요청 식별자 및 요청 헤더 X-ClientTraceId의 클라이언트 식별자를 사용하여 보고합니다. |
오류가 발생하면 요청은 JSON 오류 응답을 반환합니다. 오류 코드는 3자리 HTTP 상태 코드와 3자리 숫자를 결합하여 오류를 추가로 분류하는 6자리 숫자입니다.
오류 코드
표준 오류 응답은 이름이 error이름/값 쌍인 JSON 개체입니다. 값은 속성이 있는 JSON 개체이기도 합니다.
-
code: 서버 정의 오류 코드입니다. -
message: 사람이 읽을 수 있는 오류를 나타내는 문자열입니다.
예를 들어 평가판 구독을 사용하는 고객은 무료 할당량이 소진되면 다음 오류를 받게 됩니다.
{
"error": {
"code":403001,
"message":"The operation isn't allowed because the subscription has exceeded its free quota."
}
}
오류 코드는 오류를 더 범주화하도록 뒤에 3자리 숫자가 오는 3자리 HTTP 상태 코드로 결합된 6자리 숫자입니다. 일반적인 오류 코드는 다음과 같습니다.
| 코드 | 설명 |
|---|---|
| 400000 | 요청 입력 중 하나가 올바르지 않습니다. |
| 400001 | "scope" 매개 변수가 올바르지 않습니다. |
| 400002 | "category" 매개 변수가 올바르지 않습니다. |
| 400003 | 언어 지정자 누락되었거나 올바르지 않습니다. |
| 400004 | 대상 스크립트 지정자("To script")가 누락되었거나 올바르지 않습니다. |
| 400005 | 입력 텍스트가 누락되었거나 올바르지 않습니다. |
| 400006 | 언어 및 스크립트의 조합이 올바르지 않습니다. |
| 400018 | 원본 스크립트 지정자("From script")가 누락되었거나 올바르지 않습니다. |
| 400019 | 지정된 언어 중 하나가 지원되지 않습니다. |
| 400020 | 입력 텍스트의 배열에서 요소 중 하나가 올바르지 않습니다. |
| 400021 | API 버전 매개 변수가 누락되었거나 올바르지 않습니다. |
| 400023 | 지정된 언어 쌍 중 하나가 올바르지 않습니다. |
| 400035 | 원본 언어("From" 필드)가 올바르지 않습니다. |
| 400036 | 대상 언어("To" 필드)가 누락되었거나 올바르지 않습니다. |
| 400042 | 지정된 옵션("Options" 필드) 중 하나가 올바르지 않습니다. |
| 400043 | 클라이언트 추적 ID(ClientTraceId 필드 또는 X-ClientTraceId 헤더)가 없거나 잘못되었습니다. |
| 400050 | 입력 텍스트가 너무 깁니다. 요청 제한 보기. |
| 400064 | "translation" 매개 변수가 누락되었거나 올바르지 않습니다. |
| 400070 | 대상 스크립트(ToScript 매개 변수)의 수가 대상 언어(To parameter)의 수와 일치하지 않습니다. |
| 400071 | 값이 TextType에 적합하지 않습니다. |
| 400072 | 입력 텍스트의 배열에 요소가 너무 많습니다. |
| 400073 | 스크립트 매개 변수가 올바르지 않습니다. |
| 400074 | 요청 분문이 유효한 JSON이 아닙니다. |
| 400075 | 언어 쌍 및 범주 조합이 올바르지 않습니다. |
| 400077 | 최대 요청 크기가 초과되었습니다. 요청 제한 보기. |
| 400079 | 언어 간 번역을 요청한 사용자 지정 시스템이 존재하지 않습니다. |
| 400080 | 언어 또는 스크립트에는 음역이 지원되지 않습니다. |
| 401000 | 자격 증명이 없거나 잘못되었기 때문에 요청에 권한이 부여되지 않습니다. |
| 401015 | "제공된 자격 증명은 Speech API용입니다. 이 요청에는 Text API에 대한 자격 증명이 필요합니다. Translator에 대한 구독을 사용합니다." |
| 403000 | 작업이 허용되지 않습니다. |
| 403001 | 구독이 무료 할당량을 초과했기 때문에 작업이 허용되지 않습니다. |
| 405000 | 요청 메서드는 요청된 리소스에 대해 지원되지 않습니다. |
| 408001 | 요청된 번역 시스템이 준비되고 있습니다. 잠시 후에 다시 시도합니다. |
| 408002 | 들어오는 스트림을 기다리는 동안 요청 시간이 초과되었습니다. 서버가 대기하도록 준비된 시간 내에 클라이언트가 요청을 생성하지 않았습니다. 클라이언트는 나중에 수정하지 않고 요청을 반복할 수 있습니다. |
| 415000 | Content-Type 헤더가 없거나 잘못되었습니다. |
| 429000, 429001, 429002 | 클라이언트가 요청 제한을 초과했기 때문에 서버가 요청을 거부했습니다. |
| 500000 | 예기치 않은 오류가 발생했습니다. 오류가 지속되면 오류 날짜/시간, 응답 헤더 X-RequestId의 요청 식별자 및 요청 헤더 X-ClientTraceId의 클라이언트 식별자를 사용하여 보고합니다. |
| 503000 | 서비스를 일시적으로 사용할 수 없습니다. 다시 시도하십시오. 오류가 지속되면 오류 날짜/시간, 응답 헤더 X-RequestId의 요청 식별자 및 요청 헤더 X-ClientTraceId의 클라이언트 식별자를 사용하여 보고합니다. |