我如何在mapbox-gl-js中为WMS源设置请求头?我需要为所有瓦片请求添加一个类似以下格式的标头:
Authorization: "Bearer base64-encoded-token"
根据WMS示例、map#addSource 和 map#addLayer,我认为设置瓦片请求头是不可能的。
Authorization: "Bearer base64-encoded-token"
根据WMS示例、map#addSource 和 map#addLayer,我认为设置瓦片请求头是不可能的。
现在你可以使用transformRequest
选项来添加自定义头:
在地图请求外部URL之前运行的回调。该回调可用于修改url、设置头信息或为跨源请求设置credentials属性。应返回一个带有
url
属性和可选headers
和credentials
属性的对象。
示例:
const map = new mapboxgl.Map({
container: 'map',
center: [2.35, 48.86],
zoom: 13,
transformRequest: (url, resourceType) => {
if (resourceType === 'Source' && url.startsWith('http://myHost')) {
return {
url: url,
headers: { 'Authorization': 'Bearer ' + yourAuthToken }
}
}
}
});
header
中添加一个“隐藏”的授权代码,这样别人就无法窥视浏览器的网络工具并使用我的令牌了吧?我正在将其集成到WordPress中,非常感谢您的回复。谢谢。 - Raging Vids