GeoJSON (.geojson)

IETF Standardno

Geografski JavaScript Object Notation (GeoJSON) je univerzalni mrežni standard za kodiranje geografskih struktura podataka, koji se naširoko koristi u modernom web mapiranju (Leaflet, Mapbox, OpenLayers) i GIS aplikacijama.

Pretvori GEOJSON u KML

Besplatni GEOJSON u KML pretvarač u pregledniku. Trenutno pretvorite datoteke na svom uređaju.

Pregledaj i metapodaci

Operativni sustavi i alati za analizu datoteka identificiraju GeoJSON datoteke provjerom početnog niza binarnih bajtova:

Odaberite ili ispustite datoteke ovdje

100% privatna pretvorba u pregledniku - datoteke nikada ne napuštaju vaš uređaj

ili zalijepi Ctrl+V
Jamstvo privatnosti nulte mrežne transmisije: 0 bajtova učitano na vanjske poslužitelje. Sva obrada odvijala se lokalno u sandčiću vašeg preglednika.

Potpis zaglavlja na razini bajtova (Magic Bytes)

Operativni sustavi i alati za analizu datoteka identificiraju GeoJSON datoteke provjerom početnog niza binarnih bajtova:

HEX POTPIS (POMAK 0):

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

ASCII PRIKAZ: {\n "type": "Feature

Standardizacija: IETF RFC 7946

Tehničke specifikacije

Arhitektura spremnikaJSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries
KompresijaUncompressed text (readily compressed over HTTP via Gzip or Brotli)
字节序UTF-8 text stream
Prostori bojaN/A (Geographic Data)
Kanali i strukturaPoints, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, and custom properties
Maksimalne dimenzijeWorld Geodetic System 1984 (WGS 84) coordinate space: Longitude (-180 to +180), Latitude (-90 to +90)
ProzirnostNone
Streaming i progresivnoLine-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features

Tehnička matrica usporedbe: GeoJSON vs Konkurencija

Tehnički atributGeoJSON (Trenutno)KMLGPXSHP
Usvajanje web mapiranja100% univerzalna web GIS zadana postavkaZadana postavka za Google EarthZadana postavka za GPS uređaje i fitnessNaslijeđeni standard za stolni GIS
Redoslijed koordinata[Longitude, Latitude] (X, Y)Longitude, Latitude, AltitudeLatitude, LongitudeX, Y koordinate
Stil sintakseČisti JSON ključevi i vrijednostiOpširne XML oznake (<kml>)Opširne XML oznake (<gpx>)Više datoteka u binarnom obliku (.shp, .shx, .dbf)
Shema svojstavaProizvoljni JSON objekt svojstavaOznake sheme ExtendedDataFiksne oznake GPX shemeFiksni stupci dBase IV (.dbf)

Uobičajeni načini oštećenja i vodič za heksadecimalni oporavak

Točke na karti pojavljuju se u oceanu blizu Antarktike umjesto na svojoj pravoj lokaciji.

Temeljni uzrok: Vrijednosti geografske širine i dužine slučajno su zamijenjene u polju koordinata.

Oporavak: Zamijenite položaje koordinata [lon, lat] pomoću File2File GeoJSON pretvarača.

Sigurnosna analiza i vektori napada na parser

GeoJSON svojstva mogu sadržavati proizvoljan korisnički unos koji se mora očistiti prije iscrtavanja u skočnim prozorima karte kako bi se spriječio XSS.

Poznati vektori napada

  • Skriptiranje na više lokacija (XSS) putem neescapiranog HTML-a u svojstvima GeoJSON značajki prikazanim u opisima alata na karti.
  • Uskraćivanje usluge putem duboko ugniježđenih GeometryCollections ili poligona s milijunima vrhova.
  • Krivotvorenje zahtjeva na poslužiteljskoj strani (SSRF) putem udaljenog učitavanja GeoJSON značajki.

Najbolje obrambene prakse:

Povijesni izvori i prekretnice

2016IETF službeno standardizira GeoJSON format kao RFC 7946, nalažući WGS 84 koordinatne referentne sustave.
2014GitHub uvodi izvorno interaktivno vizualno mapiranje za sve .geojson datoteke.
2008Howard Butler, Sean Gillies i GIS zajednica otvorenog koda objavljuju početnu specifikaciju GeoJSON 1.0.

Ključne prednosti

  • Izvorni web standard: preslikava se direktno u JavaScript objekte u knjižnicama za mapiranje u pregledniku (Mapbox GL JS, Leaflet).
  • Čitljiva JSON struktura omogućuje jednostavno programsko stvaranje, filtriranje i otklanjanje pogrešaka.
  • Proizvoljna shema svojstava: pridružite bilo koje prilagođene metapodatke (broj stanovnika, naziv, brzina, prihod) izravno geometrijskim oblicima.

Tehnička ograničenja i nedostaci

  • Opširnost teksta: sprema koordinate s pomičnim zarezom kao ponovljene ASCII znamenke, što dovodi do veće veličine datoteka u odnosu na binarne Shapefileove ili FlatGeobuf.
  • RFC 7946 strogo nalaže redoslijed [Longitude, Latitude] (dužina, širina), što često zbunjuje programere naviknute na 'Lat/Long'.
  • Veliki poligoni s milijunima vrhova mogu uzrokovati usporavanje iscrtavanja DOM-a u web pregledniku.

Zanimljive tehničke činjenice

  • Službeni GeoJSON standard uređuje koordinate kao [Longitude, Latitude] (X, Y Kartezijev redoslijed), što je potpuno suprotno načinu na koji ljudi govore ('Latitude, Longitude').
  • Ako predate .geojson datoteku na GitHub, GitHub je automatski prikazuje kao interaktivnu kartu na koju se može kliknuti.
  • RFC 7946 nalaže da rubni prstenovi poligona moraju slijediti 'pravilo desne ruke': vanjski prstenovi moraju biti namotani u smjeru suprotnom od kazaljke na satu.

Često postavljana tehnička pitanja

Zašto su moje GeoJSON koordinate poredane kao [longituda, latituda] umjesto [latituda, longituda]?

Zato što se u matematici i računalnoj grafici koordinate uvijek navode kao (X, Y). Longituda predstavlja horizontalnu X-os, a latituda predstavlja vertikalnu Y-os.

Kako mogu pretvoriti KML ili Shapefile u GeoJSON?

Možete pretvoriti Google Earth KML datoteke ili Esri Shapefile datoteke u čist GeoJSON spreman za web u nekoliko sekundi koristeći File2File.app izravno u svom pregledniku.

Koja je razlika između GeoJSON-a i Shapefile-a?

Shapefile je zastarjeli višedatotečni binarni format iz 1990-ih (.shp, .shx, .dbf). GeoJSON je moderan otvoreni web format u jednoj datoteci napisan u čistom JSON-u.