【问题标题】:Cross-domain without php proxy没有php代理的跨域
【发布时间】:2012-07-24 11:36:52
【问题描述】:

this 页面中,我使用Javascript 嵌入了谷歌地图,并从加载到我的域中的静态KML 文件加载数据。我想从存储在谷歌服务器(网络链接)上的动态 KML 文件中改进我的地图加载数据,但由于跨域限制,这不能直接完成。我尝试使用 php 代理,但我的托管服务不允许这样做。 (不要问我为什么,我收到 ERROR 406 响应,客服说这种请求被他们的过滤器阻止了!)

那么,没有代理我怎么能跨域呢?

这是提供 kml 文件的链接:http://maps.google.com/maps/ms?authuser=0&vps=2&hl=en&ie=UTF8&lr=lang_en|lang_fr|lang_it&oe=UTF8&msa=0&msid=201512616711333791415.0004c56e9ca3fb71ba551&output=kml

谢谢!

【问题讨论】:

    标签: javascript google-maps cross-domain kml http-status-code-406


    【解决方案1】:

    您可以使用 JSONP 来克服跨域问题。看看这些链接:

    http://www.jquery4u.com/json/jsonp-examples/

    http://www.ibm.com/developerworks/library/wa-aj-jsonp1/

    【讨论】:

      【解决方案2】:

      如果 KmlLayer 在 Google Maps API v3(或 v2 中的 GGeoXml,或 Google Maps)中显示您的 kml,只要它是公开可用的,它就可以工作,不存在跨域问题。也许您正在自己解析它,如果是这样,那么您的问题中没有说明。

      【讨论】:

      • 我正在使用 GeoXML v3 解析 KML。我需要 GeoXML 作为侧边栏。 Here 是我的地图。我正在尝试解决#Muhammad Qasim 的建议,但我对 JQuery 不是很有信心!
      猜你喜欢
      • 1970-01-01
      • 2012-04-02
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      • 2011-06-12
      • 2016-06-22
      • 2012-02-12
      • 1970-01-01
      相关资源
      最近更新 更多