将 Glyphs 与 Amazon Location Service 和 Mapbox-GL 结合使用

Using Glyphs with Amazon Location Service and Mapbox-GL

我正在使用带有 React、react-map-gl 和 Mapbox-GL 的亚马逊定位服务。我可以成功加载 ESRI 和 HERE 地图,这表明我的身份验证没问题,但我似乎无法访问 Glyphs(字体)。我正在尝试添加像 this 这样的聚类标记功能。我可以添加点并加载基础层,但是当我尝试添加点数时,访问字形时出现错误。它正在发送这样的请求:

https://maps.geo.eu-west-1.amazonaws.com/maps/v0/maps/<MY_MAP>/glyphs/Noto%20Sans,Arial%20Unicode/0-255.pbf?<....SOME_AUTHENTICATION_STUFF>

这似乎符合此处显示的请求格式:https://docs.aws.amazon.com/location-maps/latest/APIReference/location-maps-api.pdf

但它的响应是:{"message":"Esri glyph resource not found"}

我在 HERE 地图和不同字体中收到了类似的错误消息。我已将以下内容添加到角色的操作中但没有成功(它加载地图但不加载字形)

试过这个:

"geo:GetMap*"

还有这个:

"geo:GetMapStyleDescriptor",
"geo:GetMapGlyphs",
"geo:GetMapSprites",
"geo:GetMapTile"

我需要做什么才能在 Amazon 位置服务中正确设置字形?我没有配置任何东西,只是希望它们能自然地工作。我错过了一步吗?在网上看不到任何关于它的信息。

是否有解决方法可以加载系统字体而不是远程字形?

我使用的不是最新版本,因为最新版本与 Amazon Location Service 不兼容:

"mapbox-gl": "^1.13.0",
"react-map-gl": "^5.2.11",

群集层的默认字体堆栈 (Noto Sans, Arial Unicode) 目前无法通过 Amazon Location 使用。您需要将集群层使用的字体堆栈更改为支持列表中的内容:https://docs.aws.amazon.com/location-maps/latest/APIReference/API_GetMapGlyphs.html#API_GetMapGlyphs_RequestSyntax