今回は、全国の天気予報を取得するためのAjaxのAPIデータをお届けします。Ajaxが全国の天気予報APIデータを取得するための注意事項を次に示します。
プレビュー画像(比較的シンプルでラフ)
集計データ全国天気予報インターフェース:https://www.juhe.cn/docs/api/id/39
インターフェースアドレス:http:/ /v.juhe.cn/weather/index
サポートされている形式: json/xml
リクエストメソッド: get
リクエスト例: http://v.juhe.cn/weather/index?format=2&cityname=%E8%8B%8F % E5%B7%9E&key=申請したキー
サンプルおよびデバッグツールの呼び出し: API テストツール
リクエストパラメータ説明:
名前の種類の必須説明
cityname string Y 都市名または都市 ID (例: "Suzhou") 、utf8 urlencode が必要です
dtype string N 戻りデータ形式: json または xml、デフォルトは json
format int N 今後 6 日間の予測 (将来) の 2 つの戻り形式、1 または 2、デフォルトは 1
key string Y 申請したキー
HTML 部分コード:
<!DOCTYPE html> <html lang="en"> <meta charset="UTF-8" > <title>天气预报</title> <script src="jquery-2.1.1.min.js"></script> <link rel="stylesheet" href="w.css"> <p id="mf_weather"> <script src="w.js"></script> <button id="search">天气查询</button> <input id="city" type="text" value="tbody"> <p class="ctn"> <p id="mufeng"> </p> <p id="future"></p> </p> </html>
JavaScript 部分:
/* * 1.输入城市名 * 2,点击的时候发送请求 * 3.响应成功渲染页面 * */ $('#search').on('click',function(){ var city = $('#city').val()||'北京'; $citycode=urlencode(city); url='http://v.juhe.cn/weather/index?format=2&cityname='+$citycode+'&key=c82727e986a4f6cfc6ba1984f1f9183a'; $.ajax({url: url, dataType: "jsonp", type:"get", data:{location:city}, success:function(data){ var sk = data.result.sk; var today = data.result.today; var futur = data.result.future; var fut = "日期温度天气风向"; $('#mufeng').html("<p>" + '当前: ' + sk.temp + '℃ , ' + sk.wind_direction + sk.wind_strength + ' , ' + '空气湿度' + sk.humidity + ' , 更新时间' + sk.time + "</p><p style=' padding-bottom : 10px;'>" + today.city + ' 今天是: ' + today.date_y + ' ' + today.week + ' , ' + today.temperature + ' , ' + today.weather + ' , ' + today.wind + "<p></p>"); $('#future').html("<p>" + '未来: ' + futur[0].temperature+ '℃ , ' + futur[0].weather + futur[0].wind + ' , ' + ' , 更新时间' + futur[0].week+futur[0].date + "</p><p style='padding-bottom: 10px;'>" + today.city + "<p></p>"); } }); }); function urlencode (str) { str = (str + '').toString(); return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28'). replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+'); } })
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php の他の関連記事に注目してください。中国語のサイトです!
推奨書籍:
Ajax が txt を読み取り、そのコンテンツをページに表示する方法
Ajax が jSon を走査してデータを変更および削除する方法
以上がAjax は全国の天気予報の API データを取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。