• javascript封装QQ天气预报接口


    现在提供天气预报服务的网站挺多的,一般常见的都是直接在自己网站上使用,有部分的网站提供了web service接口。

    • 常见正则方式:常见引用天气预报的方法多是使用正则去解析指定网站的天气预报,使用这种方法有些弊端:1.人 家网站的HTML格式发生了变化,你的程序则需要跟着修改。2.本身解析的正则写起来就不太简单。3.每次解析都要去访问别人的网站,当别人网站发生异常 的时候可能会拖累你的程序。当然你可以从你的应用流程上解决掉一些问题。
    • Web service接口:这个当然是首选了,一般提供web service接口的网站都会是自己的服务相对稳定一些。

    如果你的网站只需要一个显示一个地区的天气预报的话,那么就直接用吧,如果需要显示多地区的话,那么你可能就需要建立一个自己的IP库了。那天看到 QQ提供了一些这样的服务,于是就简单研究了一下,找出几个有用的接口。其中最令我比较满意的就是这些接口是javascript实现的,可以很容易的做 到各种网站系统的兼容性,不过人家的编码格式是GB2312的~

    我使用了Jquery来调用,所有的调用都是基于 http://minisite.qq.com/js/j.minisite.weather.js 研究的结果。

    获取当前浏览器的所在地区和IP:

    $j.getScript("http://fw.qq.com:80/ipaddress", function() {
        if(typeof IPData != "undefined") {
            //YoyoSite.Cookie.set("current_ip", IPData[2]+','+IPData[3]);
            alert(IPData);
        }
    });

    获得当前的天气我简单的封装了一下,这里只说明使用方法(不过……,这个天气预报不太准):

    <script language="javascript" src="http://www.greatmoo.com/untest/samples/js/jquery.js"></script>
    <script language="javascript" src="http://www.greatmoo.com/untest/samples/weather/weather.js"></script>
    <div id="weather_content"></div>

    <script language="javascript">
    weather.init("weather_content");
    </script>

    调用方法很简单,请主义示例中的 weather_content 这个关键字。

    应用实例:http://www.greatmoo.com/untest/samples/weather/weather.php,别忘了对你的页面设置GB2312编码。

  • 相关阅读:
    编写你自己的单点登录(SSO)服务
    SignalR + KnockoutJS + ASP.NET MVC4 实现井字游戏
    Quartz使用总结
    Quartz.Net入门
    ASP.NET批量下载文件的方法
    Asp.Net文件的上传和下载
    AOP实践—ASP.NET MVC5 使用Filter过滤Action参数防止sql注入,让你代码安全简洁
    ASP.NET MVC4中的异步控制器
    Mybatis表关联一对多、多对一、多对多
    Xamarin android使用Sqlite做本地存储数据库
  • 原文地址:https://www.cnblogs.com/pricks/p/1684933.html
Copyright © 2020-2023  润新知