To use the vector tiles and styles hosted on mapbox.com, you must create an account and then obtain an access token. You may learn more about access tokens here.
<!DOCTYPE html>
<html>
<head>
<script src='https://api.tiles.mapbox.com/mapbox-gl-js/v0.32.1/mapbox-gl.js'></script>
<link href='https://api.tiles.mapbox.com/mapbox-gl-js/v0.32.1/mapbox-gl.css' rel='stylesheet' />
</head>
<body>
<div id='map' style='width: 400px; height: 300px;' />
<script>
mapboxgl.accessToken = '<your access token here>';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v9'
});
</script>
</body>
</html>
Using Mapbox with Browserify
Install the mapbox-gl
npm package
npm install --save mapbox-gl
Instantiate mapboxgl.Map
var mapboxgl = require('mapbox-gl');
mapboxgl.accessToken = '<your access token here>';
var map = new mapboxgl.Map({
container: '<your HTML element id>',
style: 'mapbox://styles/mapbox/streets-v9'
});
Add the CSS file at node_modules/mapbox-gl/dist/mapbox-gl.css
or https://api.tiles.mapbox.com/mapbox-gl-js/v0.32.1/mapbox-gl.css
.
Since our build system depends on Browserify, to use Mapbox GL with any other module bundlers like Webpack, SystemJS, you have to require the distribution build instead of the package entry point:
var mapboxgl = require('mapbox-gl/dist/mapbox-gl.js');
If you're using the ES6 module system (e.g. with Rollup as a bundler), you can import mapboxgl
like so:
import mapboxgl from 'mapbox-gl/dist/mapbox-gl.js';
Add the CSS file at node_modules/mapbox-gl/dist/mapbox-gl.css
or https://api.tiles.mapbox.com/mapbox-gl-js/v0.32.1/mapbox-gl.css
.
Using Mapbox with CSP
You may use a Content Security Policy to restrict the resources your page has access to, as a way of guarding against Cross-Site Scripting and other types of attacks. If you do, Mapbox GL JS requires the following directives:
child-src blob: ;
img-src data: blob: ;
script-src 'unsafe-eval' ;
Requesting styles from Mapbox or other services will require additional
directives. For Mapbox, you can use this connect-src
setting:
connect-src https://*.tiles.mapbox.com https://api.mapbox.com