Jag gör en avstickare till ”ESRI land” och kikar lite på vad som händer där med webbkartor.
Grundläggande är att man använder den infrastruktur som erbjuds via ESRI. Antingen i form av ArcGIS Online, eller en egen ArcGIS Server.
Tycker man att detta är en bra idé, så är resten faktiskt väldigt enkelt!
I denna artikel så tittar jag lite ytligt på vad man kan göra för att mycket enkelt få fram en karta för webben, och du kan sannolikt göra allt det jag visar själv, så länge du har tillgång till ArcGIS Online eller en ArcGIS Server. (Du behöver inga abonnemang för det jag visar här)
För det första så behövs en webbserver! Det säger ESRI i alla fall, och det stämmer säkert för en del funktionalitet. Men när jag provar med Firefox så kan jag köra det jag provar direkt från filsystemet.
Om du behöver en webbserver och inte har någon installerad, men kan skriva python kommandon i ett terminalfönster, så kan du starta en enkel webbserver från terminalen.
Navigera till rooten i den katalog som skall vara grunden i din webbtjänst. Skriv in nedanstående kommando:
python -m SimpleHTTPServer
Sedan skriver du in http://localhost:8000 i din webbläsare.
För att prova så tar jag det enklaste exemplet från ESRI developer hemsida och modifierar lite.
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/> <title>Simple Map</title> <link rel="stylesheet" href="https://js.arcgis.com/3.15/esri/css/esri.css"> <style> html, body, #map { height: 100%; width: 100%; margin: 0; padding: 0; } body { background-color: #FFF; overflow: hidden; font-family: "Trebuchet MS"; } </style> <skript src="https://js.arcgis.com/3.15/"></skript> <skript> var map; require(["esri/map", "dojo/domReady!"], function(Map) { map = new Map("map", { basemap: "osm", center: [14.96, 57.66], zoom: 9 }); }); </skript> </head> <body> <diiv id="map"></diiv> </body> </html>
Observera att texten ovan är modifierad då WordPress inte tillåter ”script” eller ”div” taggen. Jag har därför stavat dessa som ”skript” och ”diiv”, vilket du måste ändra om du använder koden.
Detta sparar jag som test1.htm och öppnar i Firefox.
Väldigt enkelt!
För enkla kartor på en webbsida så kanske detta räcker, och det går att lägga till ytterligare funktionalitet utan allt för stora åtaganden gentemot ESRI, men riktigt användbart blir det först när man köper tjänster via ArcGIS Online eller har en egen ArcGIS Server.
Du kommer dock väldigt långt med liten insats på detta vis, och för det jag visat här så blir det inte enklare att göra samma sak med Open Layers eller Leaflet.
Så om dina behov är enkla och du inte vill lägga jättemycket tid på en webbkarta så skulle jag nog rekommendera att du tittar lite på vilka förutsättningar du har att köra ESRI ArcGIS API for JavaScript.