GeoJSON (.geojson)

IETF 표준

지리 정보 자바스크립트 객체 표기법(GeoJSON)은 지리 데이터 구조를 인코딩하기 위한 범용 웹 네이티브 표준으로, 현대적인 웹 매핑(Leaflet, Mapbox, OpenLayers) 및 GIS 응용 프로그램에서 널리 사용됩니다.

GEOJSON을(를) KML(으)로 변환

무료 브라우저 내 GEOJSON-KML 변환기. 기기에서 파일을 즉시 변환하세요.

검사 및 메타데이터

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 GeoJSON 파일을 식별합니다:

여기에 파일을 선택하거나 놓으세요

100% 브라우저 내 프라이버시 변환 - 파일이 기기를 절대 떠나지 않습니다

또는 붙여넣기 Ctrl+V
제로 네트워크 전송 프라이버시 보장: 외부 서버로 업로드된 데이터 0바이트. 모든 처리는 브라우저 샌드박스내에서 로컬로 수행되었습니다.

바이트 단위 헤더 시그니처 (매직 바이트)

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 GeoJSON 파일을 식별합니다:

16진수 시그니처 (오프셋 0):

7B 0A 20 20 22 74 79 70 65 22 3A 20 22 46 65 61 74 75 72 65

ASCII 표현: {\n "type": "Feature

표준화: IETF RFC 7946

기술 사양

컨테이너 아키텍처JSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries
압축Uncompressed text (readily compressed over HTTP via Gzip or Brotli)
바이트 엔디안UTF-8 text stream
색 공간N/A (Geographic Data)
채널 및 구조Points, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, and custom properties
최대 크기World Geodetic System 1984 (WGS 84) coordinate space: Longitude (-180 to +180), Latitude (-90 to +90)
투명도None
스트리밍 및 프로그레시브Line-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features

기술 비교 매트릭스: GeoJSON 대 경쟁사

기술적 속성GeoJSON (현재)KMLGPXSHP
웹 매핑 채택률100% 범용 웹 GIS 기본값Google Earth 기본값GPS 장치 및 피트니스 기본값데스크톱 GIS 레거시 표준
좌표 순서[경도, 위도] (X, Y)경도, 위도, 고도위도, 경도X, Y 좌표
구문 스타일깔끔한 JSON 키-값장황한 XML 태그 (<kml>)장황한 XML 태그 (<gpx>)다중 파일 바이너리 (.shp, .shx, .dbf)
속성 스키마임의의 JSON 속성 객체ExtendedData 스키마 태그고정 GPX 스키마 태그dBase IV (.dbf) 고정 열

일반적인 손상 모드 및 헥스 복구 가이드

지도 지점이 실제 위치 대신 남극 근처의 바다에 나타납니다.

근본 원인: 좌표 배열에서 위도와 경도 값이 실수로 바뀌었습니다.

복구: File2File GeoJSON 변환기를 사용하여 좌표 위치 [lon, lat]를 서로 바꿉니다.

보안 분석 및 파서 공격 벡터

GeoJSON 속성에는 XSS를 방지하기 위해 지도 팝업으로 렌더링하기 전에 반드시 살균(sanitization)해야 하는 임의의 사용자 입력이 포함될 수 있습니다.

알려진 공격 벡터

  • 지도 툴팁에 렌더링된 GeoJSON 피처 속성의 이스케이프되지 않은 HTML을 통한 크로스 사이트 스크립팅(XSS).
  • 깊게 중첩된 GeometryCollection 또는 수백만 개의 정점으로 이루어진 폴리곤을 통한 서비스 거부.
  • 원격 GeoJSON 피처 로딩을 통한 서버 측 요청 위조(SSRF).

방어적 모범 사례:

역사적 배경 및 주요 이력

2016IETF가 GeoJSON 형식을 WGS 84 좌표 참조계를 의무화하는 RFC 7946으로 공식 표준화합니다.
2014GitHub가 모든 .geojson 파일에 대한 기본 대화형 시각적 지도 렌더링을 도입합니다.
2008하워드 버틀러(Howard Butler), 숀 길리스(Sean Gillies) 및 오픈소스 GIS 커뮤니티가 초기 GeoJSON 1.0 사양을 발표합니다.

주요 장점

  • 웹 네이티브 표준: 브라우저 매핑 라이브러리(Mapbox GL JS, Leaflet)의 자바스크립트 객체로 직접 매핑됩니다.
  • 사람이 읽을 수 있는 JSON 구조를 통해 손쉬운 프로그래밍 방식의 생성, 필터링, 디버깅이 가능합니다.
  • 임의의 속성 스키마: 모든 사용자 정의 메타데이터(인구, 이름, 속도, 수익)를 기하학적 도형에 직접 첨부할 수 있습니다.

기술적 제한 사항 및 단점

  • 텍스트 장황성: 부동 소수점 좌표를 반복되는 ASCII 숫자로 저장하므로 바이너리 Shapefile이나 FlatGeobuf보다 파일 크기가 큽니다.
  • RFC 7946은 '경도/위도'에 익숙한 개발자들을 자주 혼란스럽게 하는 [경도, 위도] 순서를 엄격하게 의무화합니다.
  • 수백만 개의 정점이 있는 대형 폴리곤은 웹 브라우저 DOM 렌더링 속도 저하를 유발할 수 있습니다.

흥미로운 기술적 상식

  • 공식 GeoJSON 표준은 사람이 말하는 방식('위도, 경도')과 정확히 반대인 [경도, 위도] (X, Y 데카르트 순서) 순서로 좌표를 정렬합니다.
  • .geojson 파일을 GitHub에 커밋하면 GitHub가 자동으로 상호 작용 가능한 클릭 가능한 지도 형태로 렌더링합니다.
  • RFC 7946은 폴리곤 경계 링이 '오른손 법칙'을 따라야 한다고 규정합니다. 즉, 외곽 링은 반시계 방향으로 감겨야 합니다.

자주 묻는 기술 질문

내 GeoJSON 좌표가 [위도, 경도]가 아니라 왜 [경도, 위도] 순서로 되어 있나요?

수학 및 컴퓨터 그래픽에서 좌표는 항상 (X, Y)로 지정되기 때문입니다. 경도는 수평 X축을 나타내고, 위도는 수직 Y축을 나타냅니다.

KML 또는 Shapefile을 GeoJSON으로 어떻게 변환하나요?

브라우저에서 바로 File2File.app을 사용하여 몇 초 만에 Google Earth KML 파일이나 Esri Shapefile을 깔끔하고 웹에 적합한 GeoJSON으로 변환할 수 있습니다.

GeoJSON과 Shapefile의 차이점은 무엇인가요?

Shapefile은 1990년대의 오래된 다중 파일 바이너리 형식(.shp, .shx, .dbf)입니다. GeoJSON은 깔끔한 JSON으로 작성된 최신 단일 파일 오픈 웹 형식입니다.