API 응답 해석
각 API 요청은 클라이언트에 대한 응답을 다시 생성합니다. 응답을 검토하여 성공 여부를 확인하고 필요에 따라 추가 데이터를 검색해야 합니다.
HTTP 상태 코드입니다
SnapCenter REST API에서 사용하는 HTTP 상태 코드는 다음과 같다.
코드 | 설명 |
---|---|
200 |
좋습니다 새 개체를 만들지 않는 호출에 대한 성공 여부를 나타냅니다. |
201 |
작성됨 객체가 성공적으로 생성되었습니다. 응답의 위치 헤더에는 개체의 고유 식별자가 포함됩니다. |
202 |
수락됨 요청을 수행하기 위해 백그라운드 작업이 시작되었지만 아직 완료되지 않았습니다. |
400 |
잘못된 요청입니다 요청 입력이 인식되지 않거나 부적절합니다. |
401 |
권한이 없습니다 사용자 인증에 실패했습니다. |
403 |
금지됨 권한 부여(RBAC) 오류로 인해 액세스가 거부되었습니다. |
404 |
찾을 수 없습니다 요청에서 참조되는 리소스가 없습니다. |
405 |
메서드가 허용되지 않습니다 요청의 HTTP 메서드가 리소스에 대해 지원되지 않습니다. |
409 |
충돌 다른 개체를 먼저 만들어야 하거나 요청된 개체가 이미 있으므로 개체를 만들지 못했습니다. |
500입니다 |
내부 오류입니다 서버에서 일반적인 내부 오류가 발생했습니다. |
응답 헤더
SnapCenter에서 생성된 HTTP 응답에는 여러 헤더가 포함되어 있습니다.
위치
개체를 만들 때 위치 머리글에는 개체에 할당된 고유 식별자를 포함하여 새 개체에 대한 전체 URL이 포함됩니다.
콘텐츠 유형
이것은 일반적으로 입니다 application/json
.
응답 바디
API 요청으로 인한 응답 본문의 내용은 객체, 처리 유형 및 요청의 성공 또는 실패에 따라 달라집니다. 응답은 항상 JSON으로 렌더링됩니다.
단일 개체
요청에 따라 필드 집합과 함께 단일 개체를 반환할 수 있습니다. 예를 들어, 가져오기를 사용하여 고유 식별자를 사용하여 클러스터의 선택된 속성을 검색할 수 있습니다.
여러 개의 개체
리소스 컬렉션의 여러 개체를 반환할 수 있습니다. 어떤 경우든 에는 일관된 형식이 사용됩니다 num_records
개체 인스턴스의 배열을 포함하는 레코드 및 레코드 수를 나타냅니다. 예를 들어, 특정 클러스터에 정의된 노드를 검색할 수 있습니다.
작업 객체
API 호출이 비동기적으로 처리되는 경우 백그라운드 작업을 고정하는 Job 개체가 반환됩니다. 예를 들어 클러스터 구성을 업데이트하는 데 사용되는 패치 요청은 비동기적으로 처리되고 작업 개체를 반환합니다.
오류 개체
오류가 발생하면 항상 Error 개체가 반환됩니다. 예를 들어, 클러스터에 대해 정의되지 않은 필드를 변경하려고 하면 오류가 발생합니다.
비어 있습니다
경우에 따라 데이터가 반환되지 않고 응답 본문에 빈 JSON 개체가 포함되는 경우가 있습니다.
오류
오류가 발생하면 응답 본문에 오류 객체가 반환됩니다.
형식
오류 개체의 형식은 다음과 같습니다.
"error": { "message": "<string>", "code": <integer>[, "target": "<string>"] }
코드 값을 사용하여 일반 오류 유형 또는 범주를 확인하고 메시지를 사용하여 특정 오류를 확인할 수 있습니다. 사용 가능한 경우 대상 필드에는 오류와 관련된 특정 사용자 입력이 포함됩니다.
일반 오류 코드
일반적인 오류 코드는 다음 표에 설명되어 있습니다. 특정 API 호출에는 추가 오류 코드가 포함될 수 있습니다.
코드 | 설명 |
---|---|
409 |
동일한 식별자를 가진 객체가 이미 있습니다. |
400 |
필드 값이 잘못되었거나 누락되었거나 추가 필드가 제공되었습니다. |
400 |
작업이 지원되지 않습니다. |
405 |
지정된 식별자가 있는 개체를 찾을 수 없습니다. |
403 |
요청 수행 권한이 거부되었습니다. |
409 |
리소스가 사용 중입니다. |