我使用google weather API开发了一个天气应用程序 但从今天起它就停止了工作。
当我尝试通过浏览器使用位置访问天气API时,它会要求进行人工身份验证。
我的应用程序如何在这样的情况下工作?有没有办法绕过身份验证过程?
答案 0 :(得分:2)
尝试更改域名,例如:http://www.google.ca/ig/api?weather=Sondrio。它有效(现在:D)。
答案 1 :(得分:2)
这是非常奇怪的行为......我想知道它是否与我在Chrome,不支持的API中加载API网址时传递的标题有关...或者如果我在Firefox中执行相同的网址,则工作很好。
值得注意的是,我尝试通过将以下两行放在单独的Web服务器的apache配置中来设置Apache代理到Google的气象服务,并通过www.domain.com/weather/api?weather=Chicago引用API它仍然有效...所以这是我现在的解决方法:
ProxyPassReverse / weather / http://www.google.com/ig/
ProxyPass / weather / http://www.google.com/ig/
答案 2 :(得分:1)
从现在开始看起来它已经无法使用了
即使使用.CA,它也会随机返回不支持的API。
可惜
答案 3 :(得分:1)
是的,有趣的是,如果请求缺少浏览器(使用Chrome和Firefox测试)包含对非官方天气网址请求的Cookie,Google似乎会发回随机的“不支持的API”响应。
我通过复制整个“Cookie:”标题来修复我的应用程序,当我在Firebug的“Net”标签启用时在Firefox中运行请求时找到了该标题。
我不确定.google.com浏览器从哪里获取cookie,我认为使用gmail这样的个性化服务。
答案 4 :(得分:0)
如果您正在寻找现在可以使用的天气API ,我有个建议......
尝试Metwit Weather API,这是新的,但听起来很酷...... 这个api非常简单易用,因为它使用了现在可用的标准,比如JSON和REST。
答案 5 :(得分:0)
你可以使用这个新的api,它具有与google weather api相同的xml结构
http://en.previmeteo.com/professionals/google-weather-api.php