Map Tiles API로 세션 토큰 사용

유럽 경제 지역 (EEA) 개발자

세션 토큰은 관련 메시지 교환 시리즈인 세션을 식별하기 위해 REST 호출에서 사용되는 데이터 (UUID)입니다. 2D 타일 및 스트리트 뷰 이미지에 대한 모든 요청에 세션 토큰을 포함해야 합니다. 모든 요청 URL에 추가된 session 매개변수의 값으로 포함합니다.

Map Tiles API에서 세션 토큰은 정의된 표시 옵션 집합을 나타냅니다. 즉, 각 타일 요청과 함께 디스플레이 옵션 세트를 전달하지 않아도 됩니다. 여러 클라이언트에서 동일한 세션 토큰을 사용할 수 있습니다. 세션 토큰은 현재 발급 시간으로부터 2주 동안 유효하지만 변경될 수 있습니다. 응답 메시지의 expiry 필드를 확인하여 세션 토큰의 만료 시간을 언제든지 확인할 수 있습니다.

세션 토큰 요청

세션 토큰을 요청하려면 다음 예와 같이 createSession 엔드포인트에 HTTPS POST 요청을 보냅니다. Content-Type: application/json 헤더와 함께 요청을 보내야 합니다.

curl -X POST -d '{
  "mapType": "streetview",
  "language": "en-US",
  "region": "US"
}' \
-H 'Content-Type: application/json' \
"https://tile.googleapis.com/v1/createSession?key=YOUR_API_KEY"

필수 입력란

mapType

기본 지도 유형입니다. 이 값은 다음 중 하나일 수 있습니다.

roadmap
표준 Google 지도 페인트 지도 타일입니다.
satellite
위성 이미지
terrain
지형 이미지 terrain을 지도 유형으로 선택할 때는 layerRoadmap 레이어 유형도 포함해야 합니다 (선택사항 필드 섹션에 설명되어 있음).
streetview
스트리트 뷰 파노라마 자세한 내용은 스트리트 뷰 타일을 참고하세요.
language

타일에 정보를 표시하는 데 사용되는 언어를 지정하는 IETF 언어 태그입니다. 예를 들어 en-US는 미국에서 사용되는 영어 언어를 지정합니다.

region

사용자의 실제 위치를 나타내는 Common Locale Data Repository 지역 식별자 (대문자 2개)입니다. 예를 들면 다음과 같습니다. US

선택적 필드

imageFormat
반환할 파일 형식을 지정합니다. 유효한 값은 jpeg 또는 png입니다. JPEG 파일은 투명도를 지원하지 않으므로 오버레이 타일에는 권장되지 않습니다. imageFormat를 지정하지 않으면 타일에 가장 적합한 형식이 자동으로 선택됩니다.
scale

기본 타일의 타일 크기와 범위 영역을 유지하면서 지도 요소 (예: 도로 라벨)의 크기를 확대합니다. 축척을 늘리면 지도에 표시되는 라벨 수도 줄어들어 어수선함이 줄어듭니다. 다음 값은 유효한 scale 값입니다.

  • scaleFactor1x: 기본값입니다.
  • scaleFactor2x: 라벨 크기를 두 배로 늘리고 사소한 기능 라벨을 삭제합니다.
  • scaleFactor4x: 라벨 크기를 4배로 늘리고 사소한 기능 라벨을 삭제합니다.

다음 예에서는 지도 요소의 크기 조절 효과를 보여줍니다.

배율 1x 배율 2x
배율 1x를 보여주는 지도 배율 2x를 보여주는 지도
highDpi
고해상도 타일을 반환할지 여부를 지정합니다. 배율이 증가하면 highDpi를 사용하여 타일 크기를 늘립니다. 일반적으로 배율을 높이면 결과 타일이 동일한 크기의 이미지로 확대되어 품질이 저하됩니다. highDpi를 사용하면 품질을 유지하면서 결과 크기도 증가합니다. DPI는 인치당 도트 수를 나타내며, DPI가 높다는 것은 타일이 정상보다 인치당 더 많은 도트를 사용하여 렌더링된다는 의미입니다. true인 경우 x 및 y 각 차원의 픽셀 수가 배율 인자 (즉, 2x 또는 4x)로 곱해집니다. 타일의 커버리지 영역은 변경되지 않습니다. 이 매개변수는 scale 값이 2x 또는 4x인 경우에만 작동합니다. 1배 스케일 타일에는 영향을 미치지 않습니다.
배율 1x 배율 2x 고DPI
일반 해상도로 표시된 지도 2배 고DPI 해상도로 표시된 지도
layerTypes

지도에 추가된 레이어 유형을 지정하는 값의 배열입니다. 유효한 값은 다음과 같습니다.

layerRoadmap
지도 유형을 terrain로 지정하는 경우 필수입니다. satellite 지도 유형에 선택적으로 오버레이할 수도 있습니다. 로드맵 타일에는 영향을 미치지 않습니다.
layerStreetview
지도에 스트리트 뷰가 지원되는 거리와 위치를 파란색 윤곽선으로 표시합니다.
layerTraffic
현재 교통 상황을 표시합니다.
styles

도로, 공원, 시가지와 같은 지도 지형지물의 모양과 세부정보 수준을 지정하는 JSON 스타일 객체의 배열입니다. 스타일은 표준 Google 기본 지도를 맞춤설정하는 데 사용됩니다. styles 매개변수는 지도 유형이 roadmap인 경우에만 유효합니다. 전체 스타일 구문은 스타일 참조를 참고하세요.

overlay

layerTypes를 별도의 오버레이로 렌더링할지 아니면 기본 이미지와 결합할지를 지정하는 불리언 값입니다. true인 경우 기본 지도가 표시되지 않습니다. layerTypes을 정의하지 않은 경우 이 값은 무시됩니다.

예를 들어 layerRoadmap 레이어가 있는 satellite 지도 유형을 요청하고 overlayfalse로 설정하면 Maps JavaScript API에서 사용되는 hybrid 지도 유형과 동일한 타일이 생성됩니다 (왼쪽 이미지). overlaytrue로 설정된 동일한 지도 및 레이어 유형은 위성 이미지 위에 오버레이되도록 적절하게 스타일이 지정된 지도 오버레이가 있는 투명 타일을 생성합니다(오른쪽 이미지).

overlay: false overlay: true
오버레이가 false로 설정됨 오버레이가 true로 설정됨

다음 JSON은 필수 필드와 선택사항 필드가 모두 포함된 일반적인 요청 본문의 예입니다.

{
  "mapType": "satellite",
  "language": "en-US",
  "region": "us",
  "layerTypes": [ "layerRoadmap", "layerStreetview" ],
  "overlay":  true,
  "scale": "scaleFactor1x",
  "styles": [
    {
      "stylers": [
        { "hue": "#00ffe6" },
        { "saturation": -20 }
      ]
    },{
      "featureType": "road",
      "elementType": "geometry",
      "stylers": [
        { "lightness": 100 },
        { "visibility": "simplified" }
      ]
    }
  ]
}

이 예시에서는 위성 이미지와 결합하는 데 적합한 오버레이를 제공합니다. 이 예에는 로드맵과 스트리트 뷰 오버레이가 모두 포함되어 있습니다. 결과 지도는 미국에서 사용되는 영어로 이름과 데이터가 렌더링됩니다.

세션 토큰 응답

다음 JSON은 응답 본문의 예시입니다.

{
  "session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
  "expiry": "1361828036",
  "tileWidth": 256,
  "tileHeight": 256,
  "imageFormat": "png"
}

다음 목록에는 응답 본문의 필드 정의가 포함되어 있습니다.

session
모든 Map Tiles API 요청에 포함해야 하는 세션 토큰 값입니다.
expiry
토큰이 만료되는 시간(에포크 이후의 경과 시간(초))이 포함된 문자열입니다. 세션 토큰은 생성 시점으로부터 2주 동안 유효하지만 이 정책은 예고 없이 변경될 수 있습니다.
tileWidth
타일의 너비(픽셀 단위)입니다.
tileHeight
타일의 높이(픽셀)입니다.
imageFormat
이미지 형식입니다. png 또는 jpeg일 수 있습니다.