在GE客户端调试KML

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

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

我可以将URL剪切并粘贴到Web浏览器中,然后返回预期的结果.

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

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

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

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

最佳答案 Google地球本身不会记录内部操作或具有启用此类日志记录的调试模式.您可以在工具/选项/常规菜单中启用“KML错误处理”,这可能会为无效的KML提供更多信息,但最好使用类似于
KML Validator的KML来验证KML.

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

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

您可以使用点击kh.google.com,mw1.google.com,khmdb.google.com,mw2.google.com以及具有完整网址,请求和响应的HTTP标头等的点击来捕获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 Earth在幕后所做的工作.它易于使用且非常友好.

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

点赞