java代码天气晴朗 java 天气api

我的世界天气指令代码大全

;     

铁山港ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

1、天气指令有以下几种:下雨,输入/weatherrain。

2、不下雨,输入/weatherclear。

3、雷阵雨,输入/weatherthunder。

4、weatherrain(下雪)。

5、weatherclear(无天气)。

6、weatherthunder(暴风雪)。

java web service实现天气预报功能

前台js界面代码:

//省份

function LoadProvince() {

$.ajax({

type: "POST",

url: "ashx/weatherHandler.ashx",

data: "option=province",

success: function (result) {

$(".sel-province option").remove();

var arry = result.split('|');

var obj = null;

for (var i = 0; i  arry.length; i++) {

if (arry[i] != null  arry[i] != "") {

obj = arry[i].split(',');

$(".sel-province").append("option value='" + obj[1] + "'" + obj[0] + "/option");

}

}

$(".sel-province").find("option[text='北京']").attr("selected", "selected");

},

error: function (errorMsg) {

$(".result-table tr").remove();

$(".result-table").append("trtd省份请求出现错误,请您稍后重试。。。/td/tr");

}

});

}

//城市

function LoadCity(provinceid) {   

$.ajax({

type: "POST",

url: "ashx/weatherHandler.ashx",

data: "provinceid=" + provinceid + "option=city",

success: function (result) {

$(".sel-city option").remove();

var arry = result.split('|');

var obj = null;

for (var i = 0; i  arry.length; i++) {

if (arry[i] != null  arry[i] != "") {

obj = arry[i].split(',');

$(".sel-city").append("option value='" + obj[1] + "'" + obj[0] + "/option");

}

}

},

error: function (errorMsg) {

$(".result-table tr").remove();

$(".result-table").append("trtd城市请求出现错误,请您稍后重试。。。/td/tr");

}

});

}

//加载天气

function GetWeather(cityid) {

$.ajax({

type: "POST",

url: "ashx/weatherHandler.ashx",

data: "cityid=" + cityid + "option=weather",

success: function (result) {

$(".result-table tr").remove();

var arry = result.split('|');

var obj = null;

for (var i = 0; i  arry.length; i++) {

if (arry[i] != null  arry[i] != "") {

if (arry[i].indexOf(".gif")  0) {

$(".result-table").append("trtdimage src='images/" + arry[i] + "'//td/tr");

}

else {

$(".result-table").append("trtd" + arry[i] + "/td/tr");

}

}

}

},

error: function (errorMsg) {

$(".result-table tr").remove();

$(".result-table").append("trtd天气数据请求出现错误,请您稍后重试。。。/td/tr");

}

});

}

html代码:

body

form id="form1" runat="server"

div class="head-div"

table

tr

td

select class="sel-province sel"

/select

/td

td

select class="sel-city sel"

/select

/td

td

input type="button" class="btn-search" value="查询" /

/td

/tr

/table

/div

div class="result-div"

table class="result-table"

/table

/div

/form

/body

由于js不支持跨域,直接ajax+ashx一般处理程序(在里面调用天气接口)。一般处理程序代码如下:

using System.Web;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Text;

namespace WeatherTest.ashx

{

/// summary

/// weatherHandler 的摘要说明

/// /summary

public class weatherHandler : IHttpHandler

{

WeatherWsClient.WeatherWSSoapClient client = new WeatherWsClient.WeatherWSSoapClient();

public void ProcessRequest(HttpContext context)

{

context.Response.ContentType = "text/plain";

string[] result = null;

string option = context.Request.Form["option"];

switch (option)

{

case "province":

result = GetProvinces();

break;

case "city":

result = GetCitys(context.Request.Form["provinceid"]);

break;

case "weather":

result = GetWeather(context.Request.Form["cityid"], null);

break;

}

string str = ConvertToString(result, option);

context.Response.Write(str);

}

/// summary

/// 数组转字符串

/// /summary

/// param name="result"/param

/// param name="option"/param

/// returns/returns

private string ConvertToString(string[] result, string option)

{

StringBuilder sb = new StringBuilder();

foreach (string item in result)

{

sb.Append(item+"|");

}

return sb.ToString();

}

/// summary

/// 省份

/// /summary

/// returns/returns

private string[] GetProvinces()

{

return client.getRegionProvince();

}

/// summary

/// 城市

/// /summary

/// param name="provinceid"/param

/// returns/returns

private string[] GetCitys(string provinceid)

{

return client.getSupportCityString(provinceid);

}

/// summary

/// 天气数据

/// /summary

/// param name="cityid"/param

/// param name="userid"/param

/// returns/returns

private string[] GetWeather(string cityid, string userid)

{

return client.getWeather(cityid, userid);

}

public bool IsReusable

{

get

{

return false;

}

}

}

}

java调天气预报

①取出地址中的返回值(getWeatherReader方法)

②解析json格式的字符串

③形成你要展示的天气预报效果

public static String getWeatherReader() {//取得接口字符串

String currentLine = "";

String strReturn = "";

URL url = null;

HttpURLConnection conn = null;

InputStream in = null;

BufferedReader buff = null;

try {

url = new URL("");

System.out.println(url.toURI());

//打开地址链接

conn = (HttpURLConnection)url.openConnection();

conn.connect();

//接收数据

in = conn.getInputStream();

//如有乱码注意编码方式,如:UTF-8

buff = new BufferedReader(new InputStreamReader(in, "gb2312"));

while((currentLine = buff.readLine()) != null) {

strReturn += currentLine;

}

} catch (Exception e) {

e.printStackTrace();

} finally {

try {

in.close();

buff.close();

} catch (IOException e) {

return "8EF0000";

}

}

return strReturn;

}


本文标题:java代码天气晴朗 java 天气api
分享路径:http://scjbc.cn/article/ddseipd.html

其他资讯