使用 Mapbox 样式 API 调用更新样式 (POST) 或删除样式 (DELETE) 后,对列表样式 (GET /styles/v1/{username}) 的后续调用将返回过时的样式数据。例如调用 DELETE 然后调用 CREATE 后,GET 调用仍将返回已删除的样式!
等待大约 5 分钟通常会返回最新的、正确的样式数据。显然,Mapbox 端发生了一些缓存,但删除或更新应该立即反映出来。
有人确认或提供解决方法吗?
这确实是因为我们的默认缓存行为如何适用于这些 API 端点。
样式列表端点具体具有 5 分钟的默认 Cache-Control 值(即Cache-Control: max-age=300
)。您可以通过查看 API 响应的标头进行确认:
可以通过包含查询参数来解决此默认行为fresh=true
在你的要求中。使您的完整请求如下所示:
GET /styles/v1/{username}?access_token={scopes:styles.list}&fresh=true
包含此查询参数将导致 API 为您提供响应Cache-Control: no-cache
相反,您将看到与用户名关联的最新样式信息:
⚠️免责声明:我目前在 Mapbox 工作 ⚠️
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)