이 가이드에서는 대화형 지도를 웹페이지에 삽입하는 방법을 설명합니다.
Maps Embed API URL 만들기
다음은 Maps Embed API를 로드하는 URL의 예입니다.
https://www.google.com/maps/embed/v1/MAP_MODE?key=YOUR_API_KEY&PARAMETERS
다음과 같이 바꿉니다.
- MAP_MODE 지도 모드를 사용합니다.
- YOUR_API_KEY를 API 키로 바꿉니다. 자세한 내용은 API 키 가져오기를 참고하세요.
- PARAMETERS: 지도 모드의 필수 및 선택적 매개변수
iframe에 URL 추가
웹페이지에서 Maps Embed API를 사용하려면 빌드한 URL을 iframe의 src
속성 값으로 설정합니다. iframe의 height
및 width
속성으로 지도 크기를 제어합니다. 예를 들면 다음과 같습니다.
<iframe
width="450"
height="250"
frameborder="0" style="border:0"
referrerpolicy="no-referrer-when-downgrade"
src="https://www.google.com/maps/embed/v1/MAP_MODE?key=YOUR_API_KEY&PARAMETERS"
allowfullscreen>
</iframe>
위의 iframe 샘플은 다음과 같은 추가 속성을 사용합니다.
- 특정 지도 부분이 전체 화면이 되도록 허용하는
allowfullscreen
속성 frameborder="0"
및style="border:0"
속성은 지도 주변에서 표준 iframe 테두리를 제거합니다.- API 키 제한이 제대로 작동할 수 있도록 브라우저가 전체 URL을 요청과 함께
Referer
헤더로 전송할 수 있도록 하는referrerpolicy="no-referrer-when-downgrade"
속성입니다.
iframe 크기를 웹사이트의 구조와 디자인에 맞게 조절할 수 있지만, 일반적으로 방문자는 더 큰 지도와 더욱 쉽게 상호작용합니다. 포함된 지도는 어느 한쪽이 200px 미만인 크기는 지원되지 않습니다.
API 키 제한사항
호스팅 웹사이트의 referrer
메타 태그가 no-referrer
또는 same-origin
로 설정된 경우 브라우저는 Referer
헤더를 Google에 전송하지 않습니다. 이로 인해 API 키 제한으로 요청이 거부될 수 있습니다. 제한사항이 제대로 작동하려면 위의 예와 같이 iframe에 referrerpolicy
속성을 추가하여 Referer
헤더가 Google로 전송되도록 명시적으로 허용합니다.
지도에 표시되는 광고
Maps Embed API는 지도에 표시되는 광고를 포함할 수 있습니다. 지도 위에 표시되는 광고 형식과 광고 세트는 예고 없이 변경될 수 있습니다.
지도 모드 선택
요청 URL에 사용할 다음 지도 모드 중 하나를 지정할 수 있습니다.
place
: 특정 장소 또는 주소(예: 랜드마크, 비즈니스, 지형지물, 마을)에 지도 핀을 표시합니다.view
: 마커나 경로가 없는 지도를 반환합니다.directions
: 지도에 지정된 2개 이상의 지점 간 경로와 거리 및 이동 시간을 표시합니다.streetview
: 지정된 위치의 양방향 파노라마 뷰를 표시합니다.search
: 표시된 지도 지역에서 검색한 결과를 표시합니다.
place
모드
다음 URL은 place
지도 모드를 사용하여 에펠탑에 지도 마커를 표시합니다.
https://www.google.com/maps/embed/v1/place
?key=YOUR_API_KEY
&q=Eiffel+Tower,Paris+France
다음 매개변수를 사용할 수 있습니다.
매개변수 | 유형 | 설명 | 허용 값 |
---|---|---|---|
q |
필수 | 지도 마커 위치를 정의합니다. | URL 이스케이프 처리된 장소 이름, 주소, Plus Code 또는 장소 ID
Maps Embed API는 공백을 이스케이프 처리할 때 + 와 %20 를 모두 지원합니다. 예를 들어 'City Hall, New York, NY'를 City+Hall,New+York,NY 로 변환하거나 플러스 코드 '849VCWC8+R9'를 849VCWC8%2BR9 로 변환합니다. |
center |
선택사항 | 지도 뷰의 중심을 정의합니다. | 쉼표로 구분된 위도 및 경도 값을 허용합니다(예: 37.4218,-122.0840 ). |
zoom |
선택사항 | 지도의 초기 확대/축소 수준을 설정합니다. | 값 범위는 0 (전 세계)에서 21 (개별 건물)까지입니다. 상한선은 선택한 위치에서 사용 가능한 지도 데이터에 따라 다를 수 있습니다. |
maptype |
선택사항 | 로드할 지도 타일의 유형을 정의합니다. | roadmap (기본값) 또는 satellite |
language |
선택사항 | UI 요소와 지도 타일에 레이블을 표시할 때 사용할 언어를 정의합니다. 기본적으로 방문자에게 자국 언어로 된 지도가 표시됩니다. 이 매개변수는 일부 국가 타일에만 지원됩니다. 요청된 특정 언어가 타일 집합에 대해 지원되지 않으면, 이 타일 집합의 기본 언어가 사용됩니다. | |
region |
선택사항 | 지정학적 민감도에 따라 표시할 적절한 경계선과 레이블을 정의합니다. | 익숙한 ccTLD('최상위 도메인') 두 문자 값에 매핑되는 두 문자(숫자가 아닌) 유니코드 지역 하위 태그로 지정된 지역 코드를 허용합니다. 지원되는 지역은 Google Maps Platform 노출 범위 세부정보를 참고하세요. |
view
모드
다음 예에서는 view
모드와 선택적 maptype
매개변수를 사용하여 지도의 위성 뷰를 표시합니다.
https://www.google.com/maps/embed/v1/view
?key=YOUR_API_KEY
¢er=-33.8569,151.2152
&zoom=18
&maptype=satellite
다음 매개변수를 사용할 수 있습니다.
매개변수 | 유형 | 설명 | 허용 값 |
---|---|---|---|
center |
필수 | 지도 뷰의 중심을 정의합니다. | 쉼표로 구분된 위도 및 경도 값을 허용합니다(예: 37.4218,-122.0840 ). |
zoom |
선택사항 | 지도의 초기 확대/축소 수준을 설정합니다. | 값 범위는 0 (전 세계)에서 21 (개별 건물)까지입니다. 상한선은 선택한 위치에서 사용 가능한 지도 데이터에 따라 다를 수 있습니다. |
maptype |
선택사항 | 로드할 지도 타일의 유형을 정의합니다. | roadmap (기본값) 또는 satellite |
language |
선택사항 | UI 요소와 지도 타일에 레이블을 표시할 때 사용할 언어를 정의합니다. 기본적으로 방문자에게 자국 언어로 된 지도가 표시됩니다. 이 매개변수는 일부 국가 타일에만 지원됩니다. 요청된 특정 언어가 타일 집합에 대해 지원되지 않으면, 이 타일 집합의 기본 언어가 사용됩니다. | |
region |
선택사항 | 지정학적 민감도에 따라 표시할 적절한 경계선과 레이블을 정의합니다. | 익숙한 ccTLD('최상위 도메인') 두 문자 값에 매핑되는 두 문자(숫자가 아닌) 유니코드 지역 하위 태그로 지정된 지역 코드를 허용합니다. 지원되는 지역은 Google Maps Platform 노출 범위 세부정보를 참고하세요. |
directions
모드
다음 예에서는 directions
모드를 사용하여 노르웨이의 오슬로와 Telemark 사이의 경로, 거리, 통행료 및 고속도로를 피한 이동 시간을 표시합니다.
https://www.google.com/maps/embed/v1/directions
?key=YOUR_API_KEY
&origin=Oslo+Norway
&destination=Telemark+Norway
&avoid=tolls|highways
다음 매개변수를 사용할 수 있습니다.
매개변수 | 유형 | 설명 | 허용 값 |
---|---|---|---|
origin |
필수 | 경로를 표시할 시작점을 정의합니다. | URL 이스케이프된 장소 이름, 주소, 플러스 코드, 위도/경도 좌표 또는 장소 ID
Maps Embed API는 공백을 이스케이프 처리할 때 + 와 %20 를 모두 지원합니다. 예를 들어 'City Hall, New York, NY'를 City+Hall,New+York,NY 로 변환하거나 플러스 코드 '849VCWC8+R9'를 849VCWC8%2BR9 로 변환합니다. |
destination |
필수 | 경로의 종료 지점을 정의합니다. | URL 이스케이프된 장소 이름, 주소, 플러스 코드, 위도/경도 좌표 또는 장소 ID
Maps Embed API는 공백을 이스케이프 처리할 때 + 와 %20 를 모두 지원합니다. 예를 들어 'City Hall, New York, NY'를 City+Hall,New+York,NY 로 변환하거나 플러스 코드 '849VCWC8+R9'를 849VCWC8%2BR9 로 변환합니다. |
waypoints |
선택사항 | 출발지와 목적지 간에 경로를 라우팅하는 중간 장소를 하나 이상 지정합니다. | 장소 이름, 주소 또는 장소 ID
파이프 문자 (|)를 사용하여 장소를 구분하는 방식으로 여러 경유지를 지정할 수 있습니다 (예: Berlin,Germany|Paris,France ). 경유지는 최대 20개까지 지정할 수 있습니다. |
mode |
선택사항 | 이동 수단을 정의합니다. 모드가 지정되지 않은 경우 Maps Embed API는 지정된 경로에 가장 관련성이 높은 모드 중 하나 이상을 표시합니다. | driving , walking (가능하면 보행자 전용 도로 및 인도 선호), bicycling (가능하면 자전거 전용 도로 및 선호 거리 경유), transit 또는 flying |
avoid |
선택사항 | 경로에서 피해야 할 지형지물을 지정합니다. 이렇게 하더라도 제한된 기능이 포함된 경로가 제외되는 것은 아니며, 더 나은 경로를 찾기 위해 결과를 편중할 뿐입니다. | tolls , ferries 또는 highways
파이프 문자로 여러 개의 값을 구분합니다 (예:
avoid=tolls|highways ). |
units |
선택사항 | 결과에 거리를 표시할 때 측정 방법(미터법 또는 영국식)을 지정합니다. units 를 지정하지 않으면 쿼리의 origin 국가에 따라 사용할 단위가 결정됩니다. |
metric 또는 imperial |
center |
선택사항 | 지도 뷰의 중심을 정의합니다. | 쉼표로 구분된 위도 및 경도 값을 허용합니다(예: 37.4218,-122.0840 ). |
zoom |
선택사항 | 지도의 초기 확대/축소 수준을 설정합니다. | 값 범위는 0 (전 세계)에서 21 (개별 건물)까지입니다. 상한선은 선택한 위치에서 사용 가능한 지도 데이터에 따라 다를 수 있습니다. |
maptype |
선택사항 | 로드할 지도 타일의 유형을 정의합니다. | roadmap (기본값) 또는 satellite |
language |
선택사항 | UI 요소와 지도 타일에 레이블을 표시할 때 사용할 언어를 정의합니다. 기본적으로 방문자에게 자국 언어로 된 지도가 표시됩니다. 이 매개변수는 일부 국가 타일에만 지원됩니다. 요청된 특정 언어가 타일 집합에 대해 지원되지 않으면, 이 타일 집합의 기본 언어가 사용됩니다. | |
region |
선택사항 | 지정학적 민감도에 따라 표시할 적절한 경계선과 레이블을 정의합니다. | 익숙한 ccTLD('최상위 도메인') 두 문자 값에 매핑되는 두 문자(숫자가 아닌) 유니코드 지역 하위 태그로 지정된 지역 코드를 허용합니다. 지원되는 지역은 Google Maps Platform 노출 범위 세부정보를 참고하세요. |
streetview
모드
Maps Embed API를 사용하면 커버리지 영역 전반에 걸쳐 지정된 위치의 스트리트 뷰 이미지를 대화형 파노라마로 표시할 수 있습니다. 사용자 제공 Photo Sphere 및 스트리트 뷰 스페셜 컬렉션도 사용할 수 있습니다.
각 스트리트 뷰 파노라마는 단일 위치에서 완전한 360도 뷰를 제공합니다. 이미지에는 360도 가로 뷰 (완전한 래핑)와 180도 세로 뷰 (위에서 아래로 수직)가 포함됩니다. streetview
모드는 카메라를 중앙에 두고 파노라마를 구체로 렌더링하는 뷰어를 제공합니다. 카메라를 조작하여 카메라의 확대/축소와 방향을 제어할 수 있습니다.
다음 streetview
모드 파노라마를 참고하세요.
https://www.google.com/maps/embed/v1/streetview
?key=YOUR_API_KEY
&location=46.414382,10.013988
&heading=210
&pitch=10
&fov=35
다음 URL 매개변수 중 하나는 필수입니다.
location
는 위도와 경도를 쉼표로 구분된 값 (46.414382,10.013988
)으로 받아들입니다. 이 API는 이 위치에서 가장 가까운 곳에서 촬영된 파노라마를 표시합니다. 스트리트 뷰 이미지는 주기적으로 갱신되므로 사진 촬영 위치가 매번 약간씩 다를 수 있으며, 이미지가 업데이트될 때 여러분의 위치가 다른 파노라마에 스냅될 가능성이 있습니다.pano
는 특정한 파노라마 ID입니다.pano
를 지정하면location
도 지정할 수 있습니다.location
는 API가 파노라마 ID를 찾을 수 없는 경우에만 사용됩니다.
선택적 URL 매개변수:
매개변수 | 유형 | 설명 | 허용 값 |
---|---|---|---|
heading |
선택사항 | 북쪽에서부터 시계 방향으로 도 단위로 카메라의 나침반 방향을 나타냅니다. | -180°~360°의 값(도) |
pitch |
선택사항 | 카메라의 각도, 즉 위/아래 방향을 지정합니다. 양수 값은 카메라 각도를 올리고 음수 값은 카메라 각도를 내립니다. 기본 피치 0°는 이미지가 캡처될 때의 카메라 위치를 기반으로 설정됩니다. 그러므로 피치가 0°이더라도 수평이 아닌 경우가 많습니다. 예를 들어 언덕에서 촬영한 이미지의 기본 피치는 수평이 아닐 가능성이 높습니다. | -90°~90°의 값(도) |
fov |
선택사항 | 이미지의 가로 시야를 결정합니다. 기본값은 90도입니다. 고정된 크기의 뷰포트를 다루는 경우 시야각은 확대/축소 수준으로 간주될 수 있으며, 숫자가 작을수록 확대/축소 수준이 더 높음을 나타냅니다. | 10~100도 범위의 도 단위 값 |
center |
선택사항 | 지도 뷰의 중심을 정의합니다. | 쉼표로 구분된 위도 및 경도 값을 허용합니다(예: 37.4218,-122.0840 ). |
zoom |
선택사항 | 지도의 초기 확대/축소 수준을 설정합니다. | 값 범위는 0 (전 세계)에서 21 (개별 건물)까지입니다. 상한선은 선택한 위치에서 사용 가능한 지도 데이터에 따라 다를 수 있습니다. |
maptype |
선택사항 | 로드할 지도 타일의 유형을 정의합니다. | roadmap (기본값) 또는 satellite |
language |
선택사항 | UI 요소와 지도 타일에 레이블을 표시할 때 사용할 언어를 정의합니다. 기본적으로 방문자에게 자국 언어로 된 지도가 표시됩니다. 이 매개변수는 일부 국가 타일에만 지원됩니다. 요청된 특정 언어가 타일 집합에 대해 지원되지 않으면, 이 타일 집합의 기본 언어가 사용됩니다. | |
region |
선택사항 | 지정학적 민감도에 따라 표시할 적절한 경계선과 레이블을 정의합니다. | 익숙한 ccTLD('최상위 도메인') 두 문자 값에 매핑되는 두 문자(숫자가 아닌) 유니코드 지역 하위 태그로 지정된 지역 코드를 허용합니다. 지원되는 지역은 Google Maps Platform 노출 범위 세부정보를 참고하세요. |
search
모드
Search
모드는 보이는 지도 영역 전체에서 검색한 결과를 표시합니다.
검색어에 위치를 포함하거나 (record+stores+in+Seattle
) center
및 zoom
매개변수를 포함하여 검색 범위를 지정하여 검색 위치를 정의하는 것이 좋습니다.
https://www.google.com/maps/embed/v1/search
?key=YOUR_API_KEY
&q=record+stores+in+Seattle
다음 매개변수를 사용할 수 있습니다.
매개변수 | 유형 | 설명 | 허용 값 |
---|---|---|---|
q |
필수 | 검색어를 정의합니다. | 검색어에는 in+Seattle 또는 near+98033 과 같은 지리적 제한을 포함할 수 있습니다. |
center |
선택사항 | 지도 뷰의 중심을 정의합니다. | 쉼표로 구분된 위도 및 경도 값을 허용합니다(예: 37.4218,-122.0840 ). |
zoom |
선택사항 | 지도의 초기 확대/축소 수준을 설정합니다. | 값 범위는 0 (전 세계)에서 21 (개별 건물)까지입니다. 상한선은 선택한 위치에서 사용 가능한 지도 데이터에 따라 다를 수 있습니다. |
maptype |
선택사항 | 로드할 지도 타일의 유형을 정의합니다. | roadmap (기본값) 또는 satellite |
language |
선택사항 | UI 요소와 지도 타일에 레이블을 표시할 때 사용할 언어를 정의합니다. 기본적으로 방문자에게 자국 언어로 된 지도가 표시됩니다. 이 매개변수는 일부 국가 타일에만 지원됩니다. 요청된 특정 언어가 타일 집합에 대해 지원되지 않으면, 이 타일 집합의 기본 언어가 사용됩니다. | |
region |
선택사항 | 지정학적 민감도에 따라 표시할 적절한 경계선과 레이블을 정의합니다. | 익숙한 ccTLD('최상위 도메인') 두 문자 값에 매핑되는 두 문자(숫자가 아닌) 유니코드 지역 하위 태그로 지정된 지역 코드를 허용합니다. 지원되는 지역은 Google Maps Platform 노출 범위 세부정보를 참고하세요. |
장소 ID 매개변수
Maps Embed API는 장소 이름이나 주소를 제공하는 대신 장소 ID를 사용하도록 지원합니다. 장소 ID는 장소를 고유하게 식별하는 안정적인 방법입니다. 자세한 내용은 Google Places API 문서를 참고하세요.
Maps Embed API는 다음 URL 매개변수에 대해 장소 ID를 허용합니다.
q
origin
destination
waypoints
장소 ID를 사용하려면 먼저 place_id:
접두사를 추가해야 합니다. 다음 코드는 뉴욕 시청을 길찾기 요청의 출발지로 지정합니다. origin=place_id:ChIJs--MqP1YwokRBwAhjXWIHn8
radius
는 지정된 위도와 경도를 중심으로 파노라마를 검색할 반경을 미터 단위로 설정합니다. 유효한 값은 음수가 아닌 정수입니다. 기본값은 50입니다.source
는 스트리트 뷰 검색을 선택한 출처로 제한합니다. 유효한 값은 다음과 같습니다.default
는 스트리트 뷰에 기본 출처를 사용합니다. 검색은 특정 출처로 제한되지 않습니다.outdoor
는 야외 모음으로 검색을 제한합니다. 실내 컬렉션은 검색 결과에 포함되지 않습니다. 지정된 위치에 야외 파노라마가 없을 수도 있습니다. 또한 검색 시 실내 또는 실외인지 확인할 수 있는 파노라마만 반환됩니다. 예를 들어 PhotoSphere은 실내인지 실외인지 알 수 없으므로 반환되지 않습니다.