有什么方法可以在初始化地图时隐藏mapbox访问令牌吗?

问题描述 投票:0回答:1

我正在使用mapbox API 来显示交互式地图。我制作了一种代理来在客户端外部发出 API 请求,以隐藏我的访问令牌。但是当初始化地图(在客户端)时,我不知道如何隐藏我的访问令牌。

这是我用来初始化地图的代码。它可以正常工作,但如果有人在浏览器中检查我的代码,或者在 GitHub 存储库中看到代码,他们将有权访问令牌。

const accessToken = 'myKey';

mapboxgl.accessToken = accessToken;
const map = new mapboxgl.Map({
    container: 'map',
    style: 'mapbox://styles/mapbox/streets-v12',
    center: [-46.625290, -23.533773],
    zoom: 12,
    minZoom: 5,
    language: 'pt'
});

我已经对访问令牌设置了 URL 限制,但我不知道这是否足以保护它。

欢迎任何解决方案。谢谢!

javascript mapbox access-token mapbox-gl-js mapbox-gl
1个回答
0
投票

不,你无法隐藏它。但是,假设您正在谈论您的

pk.ey...
令牌(不是秘密令牌),这是正常的。

理论上,有人可以使用您的令牌访问某些数据,并且您可能需要对使用负责,但实际上这似乎并没有发生。您可以经常轮换您的令牌(为此使用 API)以减少此类滥用的影响。

这是我用来初始化地图的代码。它可以正常工作,但如果有人在浏览器中检查我的代码,或者在 GitHub 存储库中看到代码,他们将有权访问令牌。

他们不需要做这些事情 - 他们只需查看网络选项卡即可。每个网络请求都包含您的令牌。

© www.soinside.com 2019 - 2024. All rights reserved.