GeoJSON (.geojson)

IETF Standardno

Geografska JavaScript objektna notacija (GeoJSON) je univerzalni standard za kodiranje geografskih struktura podataka pogodan za veb, koji se široko koristi u modernom veb mapiranju (Leaflet, Mapbox, OpenLayers) i GIS aplikacijama.

Конвертујте GEOJSON у KML

Бесплатан GEOJSON у KML конвертор у прегледачу. Конвертујте фајлове тренутно без слања на сервер уз 100% приватност.

Pregledaj i metapodaci

Operativni sistemi i analizatori datoteka identifikuju GeoJSON datoteke proverom početnog binarnog niza bajtova:

Изаберите или превуците датотеке овде

100% приватна конверзија у прегледачу – датотеке никада не напуштају ваш уређај

или налепите Ctrl+V
100% Локална обрада у прегледачу 0 бајтова послато спољним серверима. Сва обрада је извршена локално у безбедном окружењу вашег прегледача.

Potpis zaglavlja na nivou bajtova (Magic Bytes)

Operativni sistemi i analizatori datoteka identifikuju GeoJSON datoteke proverom početnog binarnog niza bajtova:

HEX POTPIS (OFFSET 0):

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

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

Standardizacija: IETF RFC 7946

Tehničke specifikacije

Arhitektura kontejneraJSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries
KompresijaUncompressed text (readily compressed over HTTP via Gzip or Brotli)
Bajtni redosled (Endianness)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)
TransparentnostNone
Strimovanje i progresivno učitavanjeLine-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features

Tehnička matrica poređenja: GeoJSON vs Konkurenti

Tehnički atributGeoJSON (Trenutno)KMLGPXSHP
Usvajanje u veb mapiranju100% univerzalni podrazumevani veb GISGoogle Earth podrazumevanoPodrazumevano za GPS uređaje i fitnesZastareli standard za desktop GIS
Redosled koordinata[Longitude, Latitude] (X, Y)Longitude, Latitude, AltitudeLatitude, LongitudeX, Y koordinate
Stil sintakseČisti JSON ključ-vrednostOpširne XML oznake (<kml>)Opširne XML oznake (<gpx>)Binarni fajlovi sa više datoteka (.shp, .shx, .dbf)
Šema svojstavaProizvoljni objekat JSON svojstavaExtendedData šema oznakeFiksne GPX šema oznakedBase IV (.dbf) fiksne kolone

Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak

Tačke na mapi se pojavljuju u okeanu blizu Antarktika umesto na njihovoj pravoj lokaciji.

Osnovni uzrok: Vrednosti geografske širine i dužine su slučajno zamenjene u nizu koordinata.

Oporavak: Zamenite položaje koordinata [lon, lat] koristeći File2File GeoJSON konverter.

Bezbednosna analiza i vektori napada parsera

GeoJSON svojstva mogu sadržati proizvoljne korisničke unose koje je potrebno očistiti pre renderovanja u iskačuće prozore mape kako bi se sprečio XSS.

Poznati vektori napada

  • Skriptovanje na više lokacija (XSS) preko neescaped HTML-a u svojstvima GeoJSON funkcija renderovanim u opisnim kružićima (tooltip) na mapi.
  • Ukrađivanje usluge (DoS) kroz duboko ugnježđene GeometryCollections ili poligone sa milion temena.
  • Falsifikovanje zahteva na strani servera (SSRF) putem učitavanja udaljenih GeoJSON funkcija.

Defanzivne najbolje prakse:

Istorijat i prekretnice

2016IETF zvanično standardizuje GeoJSON format kao RFC 7946, nalažući sisteme referentnih koordinata WGS 84.
2014GitHub uvodi nativno interaktivno vizuelno renderovanje mapa za sve .geojson datoteke.
2008Hauard Batler, Šon Gilis i open-source GIS zajednica objavljuju početnu specifikaciju GeoJSON 1.0.

Ključne prednosti

  • Nativni veb standard: direktno se preslikava u JavaScript objekte u bibliotekama za mapiranje u pretraživaču (Mapbox GL JS, Leaflet).
  • JSON struktura čitljiva ljudima omogućava lako programsko kreiranje, filtriranje i otklanjanje grešaka.
  • Proizvoljna šema svojstava: prikačite bilo koje prilagođene metadatke (broj stanovnika, naziv, brzinu, prihod) direktno na geometrijske oblike.

Tehnička ograničenja i nedostaci

  • Tekstualna opširnost: skladišti koordinate sa pokretnim zarezom kao ponovljene ASCII cifre, što dovodi do veće veličine datoteka u odnosu na binarne Shapefile ili FlatGeobuf datoteke.
  • RFC 7946 strogo nalaže redosled [longitude, latitude] (dužina, širina), što često zbunjuje programere navikle na 'širina/dužina'.
  • Veliki poligoni sa milionima temena mogu uzrokovati usporenje renderovanja DOM-a u veb pretraživaču.

Zanimljivosti

  • Zvanični GeoJSON standard uređuje koordinate kao [longitude, latitude] (X, Y Dekartov redosled), što je tačno suprotno od načina na koji ljudi govore ('geografska širina, geografska dužina').
  • Ako otpremite .geojson datoteku na GitHub, GitHub je automatski renderuje kao interaktivnu mapu na koju se može kliknuti.
  • RFC 7946 nalaže da prstenovi granice poligona moraju da prate 'pravilo desne ruke': spoljni prstenovi moraju biti namotani u smeri suprotnom od smeri kretanja kazaljke na satu.

Često postavljana tehnička pitanja

Zašto su moje GeoJSON koordinate poređane kao [dužina, širina] umesto [širina, dužina]?

Zato što se u matematici i računarskoj grafici koordinate uvek navode kao (X, Y). Geografska dužina predstavlja horizontalnu X-osu, a geografska širina predstavlja vertikalnu Y-osu.

Kako mogu da konvertujem KML ili Shapefile u GeoJSON?

Možete konvertovati Google Earth KML fajlove ili Esri Shapefile u čist GeoJSON spreman za veb za nekoliko sekundi koristeći File2File.app direktno u pretraživaču.

Koja je razlika između GeoJSON i Shapefile formata?

Shapefile je zastareli binarni format sa više fajlova iz 1990-ih (.shp, .shx, .dbf). GeoJSON je moderan, otvoreni veb format u jednom fajlu napisan u čistom JSON-u.