GeoJSON (.geojson)
IETF StandardGeographic JavaScript Object Notation (GeoJSON) è lo standard universale e nativo per il web per la codifica di strutture di dati geografici, ampiamente utilizzato nella mappatura web moderna (Leaflet, Mapbox, OpenLayers) e nelle applicazioni GIS.
Converti da GEOJSON a KML
Convertitore gratuito da GEOJSON a KML nel browser. Converti i file istantaneamente sul tuo dispositivo.
Ispeziona e metadati
I sistemi operativi e gli analizzatori di file identificano i file GeoJSON ispezionando la sequenza di byte binari iniziale:
Firma dell'intestazione a livello di byte (Magic Bytes)
I sistemi operativi e gli analizzatori di file identificano i file GeoJSON ispezionando la sequenza di byte binari iniziale:
FIRMA ESADECIMALE (OFFSET 0):
7B 0A 20 20 22 74 79 70 65 22 3A 20 22 46 65 61 74 75 72 65RAPPRESENTAZIONE ASCII: {\n "type": "Feature
Standardizzazione: IETF RFC 7946
Specifiche tecniche
| Architettura del container | JSON document adhering to RFC 7946 representing geographic Features, FeatureCollections, and Geometries |
| Compressione | Uncompressed text (readily compressed over HTTP via Gzip or Brotli) |
| Endianness dei byte | UTF-8 text stream |
| Spazi colore | N/A (Geographic Data) |
| Canali e struttura | Points, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, and custom properties |
| Dimensioni massime | World Geodetic System 1984 (WGS 84) coordinate space: Longitude (-180 to +180), Latitude (-90 to +90) |
| Trasparenza | None |
| Streaming e progressivo | Line-delimited GeoJSON (GeoJSONL / GeoJSONSeq) enables continuous streaming of millions of features |
Matrice di confronto tecnico: GeoJSON vs Concorrenti
| Attributo tecnico | GeoJSON (Corrente) | KML | GPX | SHP |
|---|---|---|---|---|
| Adozione nella Mappatura Web | Predefinito GIS web universale al 100% | Predefinito di Google Earth | Predefinito per dispositivi GPS e fitness | Standard legacy GIS desktop |
| Ordine delle Coordinate | [Longitudine, Latitudine] (X, Y) | Longitudine, Latitudine, Altitudine | Latitudine, Longitudine | Coordinate X, Y |
| Stile della Sintassi | Coppie chiave-valore JSON pulite | Tag XML dettagliati (<kml>) | Tag XML dettagliati (<gpx>) | Binario multi-file (.shp, .shx, .dbf) |
| Schema delle Proprietà | Oggetto di proprietà JSON arbitrario | Tag di schema ExtendedData | Tag di schema GPX fissi | Colonne fisse dBase IV (.dbf) |
Modalità di corruzione comuni e guida al recupero Hex
I punti della mappa compaiono nell'oceano vicino all'Antartide anziché nella loro posizione reale.
Causa principale: I valori di Latitudine e Longitudine sono stati scambiati accidentalmente nell'array delle coordinate.
Ripristino: Inverti le posizioni delle coordinate [lon, lat] utilizzando il convertitore GeoJSON di File2File.
Analisi di sicurezza e vettori di attacco del parser
Le proprietà GeoJSON possono contenere input utente arbitrari che devono essere igienizzati prima di essere renderizzati nei popup delle mappe per prevenire attacchi XSS.
Vettori di attacco noti
- Cross-site scripting (XSS) tramite HTML non sottoposto a escape nelle proprietà delle feature GeoJSON renderizzate nei tooltip della mappa.
- Denial of service tramite GeometryCollections profondamente annidate o poligoni con milioni di vertici.
- Server-Side Request Forgery tramite il caricamento di feature GeoJSON remote.
Migliori pratiche difensive:
Origini storiche e tappe fondamentali
Vantaggi principali e pro
- Standard web nativo: si mappa direttamente in oggetti JavaScript nelle librerie di mappatura per browser (Mapbox GL JS, Leaflet).
- La struttura JSON leggibile dall'uomo consente la creazione, il filtraggio e il debug programmatici senza sforzo.
- Schema di proprietà arbitrario: associa qualsiasi metagramma personalizzato (popolazione, nome, velocità, ricavi) direttamente alle forme geometriche.
Limiti tecnici e svantaggi
- Verbosità del testo: memorizza coordinate a virgola mobile come cifre ASCII ripetute, portando a dimensioni di file maggiori rispetto a Shapefile binari o FlatGeobuf.
- La RFC 7946 impone rigorosamente l'ordine [Longitudine, Latitudine], il che confonde frequentemente gli sviluppatori abituati a 'Lat/Long'.
- Poligoni di grandi dimensioni con milioni di vertici possono causare rallentamenti nel rendering del DOM del browser web.
Curiosità tecniche interessanti
- Lo standard GeoJSON ufficiale ordina le coordinate come [Longitudine, Latitudine] (ordine cartesiano X, Y), che è l'esatto opposto di come parlano le persone ('Latitudine, Longitudine').
- Se esegui il commit di un file .geojson su GitHub, GitHub lo renderizza automaticamente come mappa interattiva e cliccabile.
- La RFC 7946 stabilisce che gli anelli di confine dei poligoni devono seguire la 'regola della mano destra': gli anelli esterni devono essere avvolti in senso antiorario.
Domande tecniche frequenti
Perché le mie coordinate GeoJSON sono ordinate come [longitudine, latitudine] anziché [latitudine, longitudine]?
Perché in matematica e computer grafica le coordinate vengono sempre specificate come (X, Y). La longitudine rappresenta l'asse X orizzontale e la latitudine rappresenta l'asse Y verticale.
Come posso convertire KML o Shapefile in GeoJSON?
Puoi convertire file KML di Google Earth o Shapefile Esri in GeoJSON pulito e pronto per il web in pochi secondi utilizzando File2File.app direttamente nel tuo browser.
Qual è la differenza tra GeoJSON e Shapefile?
Lo Shapefile è un formato binario multifile obsoleto degli anni '90 (.shp, .shx, .dbf). GeoJSON è un formato web aperto, moderno e a file singolo scritto in JSON pulito.
Coppie di conversione per GeoJSON correlate
La conversione di vettori GeoJSON in Google KML traduce array di coordinate JSON leggeri in documenti XML strutturati su misura per Google Earth e Google Maps.
La conversione di file Google KML in GeoJSON trasforma dati geografici XML gerarchici in vettori leggeri in formato JavaScript Object Notation per mappe web moderne.
La conversione di dati vettoriali GeoJSON in GPX trasforma oggetti JSON geografici standard in un formato basato su XML ottimizzato per i dispositivi di navigazione fisica.