【问题标题】:Debugging KML in GE client在 GE 客户端调试 KML
【发布时间】:2012-08-03 11:28:56
【问题描述】:

使用 Google Earth 6.2.2.6613 客户端和 KML 文件,我需要调试。

我遇到 GE 报告我的 KML 文件发出“无效 HTTP 请求”并显示有问题的 URL 的情况。

我可以将 URL 剪切并粘贴到网络浏览器中,它会返回预期的结果。

所以问题是“如何从 GE 客户端获取有用的调试信息?”

例如“无效的 HTTP 请求”?如何 ?什么无效? GE 客户端是否运行/有调试日志或模式?

我使用的是 64 位 Windows 7 Professional,但将来我需要测试其他版本 (Mac OS X)。

虽然网络代理(或我自己的全球服务器)允许我查看 http 流量,但我需要查看 GE 客户端中的请求之间发生了什么。

【问题讨论】:

    标签: debugging kml google-earth


    【解决方案1】:

    Google 地球本身不会记录它在内部所做的事情,也没有调试模式来启用此类记录。您可以在“工具/选项/常规”菜单中启用“KML 错误处理”,这可能会提供有关无效 KML 的更多信息,但最好使用 KML Validator 之类的方法来验证 KML。

    因此,调试 Google 地球 HTTP 访问的最简单方法是使用网络分析器(例如 Fiddler Web Debugger)来识别网络流量。

    Fiddler 作为 HTTP 代理运行并捕获所有显示完整 HTTP 请求和响应信息的 Web 访问。只需点击“捕获流量”,然后启动 Google 地球即可捕获所有 HTTP 流量。

    您可以捕获 HTTP 会话,其中包含对 kh.google.com、mw1.google.com、khmdb.google.com、mw2.google.com 等的点击以及完整 URL , 请求和响应的 HTTP 标头等。多视图、过滤、解码、计时信息等有很多选项。您会看到所选图层被下载为 KMZ 文件。

    Sample Web session
    
    Result Port  Host            URL
    200    HTTP  kh.google.com   /geauth?ct=free
    200    HTTP      Tunnel to www.google.com:443
    200    HTTP      Tunnel to accounts.google.com:443 
    200    HTTP  kh.google.com   /flatfile?q2-0-q.534
    200    HTTP  mw1.google.com  /mw-earth-vectordb/photos/360cities/360cities.kmz
    200    HTTP  mw1.google.com  /mw-weather/base/files/kml/weather_en.kmz
    ...
    

    调试完成后,您可以停止 Fiddler,它将 HTTP 代理设置恢复正​​常。

    我使用此工具快速了解 Google 地球在幕后所做的事情。它易于使用且非常友好。

    http://www.fiddler2.com/fiddler2/

    【讨论】:

    • 好的,但提琴手不会告诉你客户端在做什么......只有它发送/接收的流量。如果您运行自己的全球服务器,您可以获得相同的信息。
    • 如果 Google 地球客户端具有调试模式,则没有记录,客户端中也没有任何选项可以启用调试/日志记录。注册表设置中也没有任何此类选项。只有调试真正是检查 HTTP 流量。
    • 感谢 Jason,但 HTTP 流量并不能解决问题。考虑问题“我怎么知道为什么 GE 报告为无效的链接无效?” HTTP 流量只能回答 1/2(最多)可能的原因。
    猜你喜欢
    • 1970-01-01
    • 2013-01-17
    • 2012-01-31
    • 2019-10-09
    • 2019-10-08
    • 2020-12-13
    • 2011-07-26
    • 2019-10-03
    • 2010-11-09
    相关资源
    最近更新 更多