"Compute API 버전"의 두 판 사이의 차이

 
(같은 사용자의 중간 판 하나는 보이지 않습니다)
4번째 줄: 4번째 줄:
;버전
;버전
https://docs.openstack.org/api-guide/compute/versions.html
https://docs.openstack.org/api-guide/compute/versions.html
---
----
OpenStack Compute API는 URI와 MIME 유형 버전 스킴을 모두 사용합니다. URI 스킴에서는 경로의 첫 번째 요소가 대상 버전 식별자를 포함합니다 (예: https://servers.api.openstack.org/v2.1/…). MIME 유형 버전 스킴에서는 HTTP 콘텐츠 협상을 사용하여 <code>Accept</code> 또는 <code>Content-Type</code> 헤더에 버전을 식별하는 MIME 유형이 포함됩니다 (application/vnd.openstack.compute.v2.1+json). 버전 MIME 유형은 항상 application/json과 같은 기본 MIME 유형에 링크됩니다. HTTP 헤더와 URI 모두에서 충돌하는 버전이 지정된 경우, URI가 우선합니다.
OpenStack Compute API는 URI와 MIME 타입 버전 스킴을 모두 사용합니다. URI 스킴에서는 경로의 첫 번째 요소가 대상 버전 식별자를 포함합니다 (예: https://servers.api.openstack.org/v2.1/…). MIME 타입 버전 스킴에서는 HTTP 콘텐츠 협상을 사용하여 <code>Accept</code> 또는 <code>Content-Type</code> 헤더에 버전을 식별하는 MIME 타입이 포함됩니다 (application/vnd.openstack.compute.v2.1+json). 버전 MIME 타입은 항상 application/json과 같은 기본 MIME 타입에 링크됩니다. HTTP 헤더와 URI 모두에서 충돌하는 버전이 지정된 경우, URI가 우선합니다.


;<nowiki>예시: MIME 유형 버전으로 요청</nowiki>
;<nowiki>예시: MIME 타입 버전으로 요청</nowiki>


<syntaxhighlight lang='text'>
<syntaxhighlight lang='text'>
79번째 줄: 79번째 줄:


상세 버전 응답에는 API 서비스의 인간이 읽을 수 있는(human-readable)과 기계가 처리할 수 있는(machine-processable) 설명 모두에 대한 포인터가 포함되어 있습니다.
상세 버전 응답에는 API 서비스의 인간이 읽을 수 있는(human-readable)과 기계가 처리할 수 있는(machine-processable) 설명 모두에 대한 포인터가 포함되어 있습니다.
==같이 보기==
* [[Compute API 마이크로버전]]

2024년 7월 2일 (화) 21:41 기준 최신판

1 개요[ | ]

Versions
버전

https://docs.openstack.org/api-guide/compute/versions.html


OpenStack Compute API는 URI와 MIME 타입 버전 스킴을 모두 사용합니다. URI 스킴에서는 경로의 첫 번째 요소가 대상 버전 식별자를 포함합니다 (예: https://servers.api.openstack.org/v2.1/…). MIME 타입 버전 스킴에서는 HTTP 콘텐츠 협상을 사용하여 Accept 또는 Content-Type 헤더에 버전을 식별하는 MIME 타입이 포함됩니다 (application/vnd.openstack.compute.v2.1+json). 버전 MIME 타입은 항상 application/json과 같은 기본 MIME 타입에 링크됩니다. HTTP 헤더와 URI 모두에서 충돌하는 버전이 지정된 경우, URI가 우선합니다.

예시: MIME 타입 버전으로 요청
GET /214412/images HTTP/1.1
Host: servers.api.openstack.org
Accept: application/vnd.openstack.compute.v2.1+json
X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb
예시: URI 버전으로 요청
GET /v2.1/214412/images HTTP/1.1
Host: servers.api.openstack.org
Accept: application/json
X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb

2 영구 링크[ | ]

MIME 타입 버전 접근방식은 버전 스킴이 URI 경로에 명시되지 않기 때문에, 영구 링크 생성을 허용합니다: https://api.servers.openstack.org/224532/servers/123

URI나 HTTP 헤더에 버전을 명시하지 않고 요청을 하는 경우, 사용가능한 버전의 링크와 MIME 타입을 제공하는 다중 선택 응답(300)을 받게 됩니다.

예시: 다중 선택: JSON 응답
{
  "choices": [
      {
          "id": "v2.0",
          "links": [
              {
                  "href": "http://servers.api.openstack.org/v2/7f5b2214547e4e71970e329ccf0b257c/servers/detail",
                  "rel": "self"
              }
          ],
          "media-types": [
              {
                  "base": "application/json",
                  "type": "application/vnd.openstack.compute+json;version=2"
              }
          ],
          "status": "SUPPORTED"
      },
      {
          "id": "v2.1",
          "links": [
              {
                  "href": "http://servers.api.openstack.org/v2.1/7f5b2214547e4e71970e329ccf0b257c/servers/detail",
                  "rel": "self"
              }
          ],
          "media-types": [
              {
                  "base": "application/json",
                  "type": "application/vnd.openstack.compute+json;version=2.1"
              }
          ],
          "status": "CURRENT"
      }
  ]
}

CURRENT(현재) 상태의 API는 최신 API이며, Nova 프로젝트에 의해 지속적으로 개선되고 있습니다. SUPPORTED(지원) 상태의 API는 새 기능이 추가되지 않는 구 버전 API입니다. DEPRECATED(지원중단) 상태의 API는 가까운 미래에 제거될 예정인 API입니다. 제공자들은 개발자 및 파트너와 협력하여 지원중단된 버전이 제거되기 전에 새 버전으로 마이그레이션할 충분한 시간이 있도록 해야 합니다. 아직 릴리스되지 않은 개발 중인 API의 상태는 EXPERIMENTAL(실험적)입니다.

애플리케이션은 인증 시스템에서 반환된 루트 URL(버전 및 그 뒤의 모든 것이 생략된 상태)에서 GET 요청을 수행하여 사용가능한 API 버전을 프로그래밍 방식으로 확인할 수 있습니다.

또한, 기본 버전 URL(예: https://servers.api.openstack.org/v2.1/)에서 GET 요청을 수행하여 특정 버전에 대한 추가 정보를 얻을 수 있습니다. 버전 요청 URL은 항상 슬래시(/)로 끝나야 합니다. 슬래시를 생략하면 서버가 302 리디렉션 요청으로 응답할 수 있습니다.

버전 목록과 버전 세부정보 요청과 응답 예시는 API 버전을 참조하십시오.

상세 버전 응답에는 API 서비스의 인간이 읽을 수 있는(human-readable)과 기계가 처리할 수 있는(machine-processable) 설명 모두에 대한 포인터가 포함되어 있습니다.

3 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}