无法在Google Earth中渲染KML文件

时间:2019-06-18 10:18:10

标签: javascript java google-maps kml google-earth

当我尝试在Google Earth中的kml文件下方进行渲染时,我得到一个带有红色边框和红色X输出的透明大白框。任何人都可以让我知道为什么它不能正确渲染。

kml文件链接: https://www.wpc.ncep.noaa.gov/kml/winwx/HPC_Day1-3_psnow_gt_08_nlbody.kml

1 个答案:

答案 0 :(得分:0)

如果您尝试在网络上的新Google Earth(v9)中查看此内容,则可能会遇到CORS问题。

在Earth Pro(v7)中查看时,提供注释的链接对我有用,该链接在其中加载了带有图例的屏幕叠加层,落矶山脉中的一些小数据多边形以及带有白色的巨大地面叠加层图像在美国中部的文字。

在Google Earth for web上,它给了我您所描述的红色X。如果您查看Chrome开发者控制台,则会看到该KML文件请求的图像来自未在传出文件上设置必要的CORS(跨源请求)标头的服务器(以下屏幕截图)。红色X代表地球在无法获取或加载图片时显示的内容。不幸的是,Web上的地球有其他安全要求,并且应用程序请求的所有文件都必须启用CORS。除非您知道NOAA的某人可以更新服务器以提供必要的CORS标头,否则您必须坚持使用Earth Pro来查看此标头。

Screenshot of your KML loaded in Earth for web, with CORS errors in console