天气预报webserviceweb service实现天气预报的详细步骤

天气预报webservice  时间:2021-06-03  阅读:()

webservice

简单说, WebService就是一些站点开放一些服务出来, 也可以是你自己开发的Service, 也就是一些方法, 通过URL,指定某一个方法名,发出请求,站点里的这个服务(方法),接到你的请求,根据传过来的参数,做一些处理, 然后把处理后的结果以XML形式返回来给你,你的程序就解析这些XML数据,然后显示出来或做其它操作. 举个例子: 很多大的站点提供有天气预报的WebService,只要你发出请求过来,它就返回天气预报的数据,然后你把结果显示在自己的程序上.

什么是webservice 能否举个通俗易懂的例子啊

表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。

这就是说,你能够通过Web来调用这个应用程序。

WebService的定义是什么?

你想了解什么?Web Service是一种基于SOAP协议的技术,中文名称是“Web服务”,您可以使用Web Service创建自定义的方法,Web Service现如今被广泛应用,如:您需要去调用某个网站的天气预报,如果对方的网站支持Web Service,您就可以自己用编程的方式去调用它的方法,从而获得天气信息,Web Service的优点是可以实现跨平台调用,也就是说您使用Java创建的Web Service可以在.Net里面创建方法直接调用,非常方便,著名的有亚马逊的EC2平台,您可以利用该网站的Web Service调用该网站的所有的产品信息,从而达到信息分享!而且Web Service是以XML方式传送数据的,所以传输速度非常快速!如果您想了解更多请继续提问!互相交流学习!

android怎么访问天气webservice,用网上找的链接都不行

WebService是一种基于SOAP协议的远程调用标准,通过webservice可以将不同操作系统平台、不同语言、不同技术整合到一块。

在Android SDK中并没有提供调用WebService的库,因此,需要使用第三方的SDK来调用WebService。

PC版本的WEbservice客户端库非常丰富,例如Axis2,CXF等,但这些开发包对于Android系统过于庞大,也未必很容易移植到Android系统中。

因此,这些开发包并不是在我们的考虑范围内。

适合手机的WebService客户端的SDK有一些,比较常用的有Ksoap2,可以从/p/ksoap2-android/downloads/list进行下载;将下载的ksoap2-android-assembly-2.4-jar-with-dependencies.jar包复制到Eclipse工程的lib目录中,当然也可以放在其他的目录里。

同时在Eclipse工程中引用这个jar包。

具体调用调用webservice的方法为: (1) 指定webservice的命名空间和调用的方法名,如: SoapObject request =new SoapObject(http://service,”getName”); SoapObject类的第一个参数表示WebService的命名空间,可以从WSDL文档中找到WebService的命名空间。

第二个参数表示要调用的WebService方法名。

(2) 设置调用方法的参数值,如果没有参数,可以省略,设置方法的参数值的代码如下: Request.addProperty(“param1”,”value”); Request.addProperty(“param2”,”value”); 要注意的是,addProperty方法的第1个参数虽然表示调用方法的参数名,但该参数值并不一定与服务端的WebService类中的方法参数名一致,只要设置参数的顺序一致即可。

(3) 生成调用Webservice方法的SOAP请求信息。

该信息由SoapSerializationEnvelope对象描述,代码为: SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11); Envelope.bodyOut = request; 创建SoapSerializationEnvelope对象时需要通过SoapSerializationEnvelope类的构造方法设置SOAP协议的版本号。

该版本号需要根据服务端WebService的版本号设置。

在创建SoapSerializationEnvelope对象后,不要忘了设置SOAPSoapSerializationEnvelope类的bodyOut属性,该属性的值就是在第一步创建的SoapObject对象。

(4) 创建HttpTransportsSE对象。

通过HttpTransportsSE类的构造方法可以指定WebService的WSDL文档的URL: HttpTransportSE ht=new HttpTransportSE(“http://192.168.18.17:80 /axis2/service/SearchNewsService?wsdl”); (5)使用call方法调用WebService方法,代码: ht.call(null,envelope); Call方法的第一个参数一般为null,第2个参数就是在第3步创建的SoapSerializationEnvelope对象。

(6)使用getResponse方法获得WebService方法的返回结果,代码: SoapObject soapObject =( SoapObject) envelope.getResponse(); 以下为简单的实现一个天气查看功能的例子: lass WebService extends Activity { privatestaticfinal String NAMESPACE ="/"; // WebService地址 privatestatic String URL ="/ webservices/weatherwebservice.asmx"; privatestaticfinal String METHOD_NAME ="getWeatherbyCityName"; privatestatic String SOAP_ACTION ="/ getWeatherbyCityName"; private String weatherToday; private Button okButton; private SoapObject detail; @Override publicvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); okButton = (Button) findViewById(R.id.ok); okButton.setOnClickListener(new Button.OnClickListener() { publicvoid onClick(View v) { showWeather(); } }); } privatevoid showWeather() { String city ="武汉"; getWeather(city); } @SuppressWarnings("deprecation") publicvoid getWeather(String cityName) { try { System.out.println("rpc------"); SoapObject rpc =new SoapObject(NAMESPACE, METHOD_NAME); System.out.println("rpc"+ rpc); System.out.println("cityName is "+ cityName); rpc.addProperty("theCityName", cityName); AndroidHttpTransport ht =new AndroidHttpTransport(URL); ht.debug =true; SoapSerializationEnvelope envelope =new SoapSerializationEnvelope( SoapEnvelope.VER11); envelope.bodyOut = rpc; envelope.dotNet =true; envelope.setOutputSoapObject(rpc); ht.call(SOAP_ACTION, envelope); SoapObject result = (SoapObject) envelope.bodyIn; detail = (SoapObject) result .getProperty("getWeatherbyCityNameResult"); System.out.println("result"+ result); System.out.println("detail"+ detail); Toast.makeText(WebService.this, detail.toString(), Toast.LENGTH_LONG).show(); parseWeather(detail); return; } catch (Exception e) { e.printStackTrace(); } } privatevoid parseWeather(SoapObject detail) throws UnsupportedEncodingException { String date = detail.getProperty(6).toString(); weatherToday ="今天:"+ date.split("")[0]; weatherToday = weatherToday +" 天气:"+ date.split("")[1]; weatherToday = weatherToday +" 气温:" + detail.getProperty(5).toString(); weatherToday = weatherToday +" 风力:" + detail.getProperty(7).toString() +" "; System.out.println("weatherToday is "+ weatherToday); Toast.makeText(WebService.this, weatherToday, Toast.LENGTH_LONG).show(); } }

web service实现天气预报的详细步骤

<iframe allowtransparency="true" id="weather" scrolling="no" frameborder="0" marginwidth="1" marginheight="1" height="250" width="700" src="/tb.q"> </iframe> soso的

Hostodo独立日提供四款特价年付VPS套餐 最低年付$13.99

前天,还有在"Hostodo商家提供两款大流量美国VPS主机 可选拉斯维加斯和迈阿密"文章中提到有提供两款流量较大的套餐,这里今天看到有发布四款庆祝独立日的七月份的活动,最低年付VPS主机13.99美元,如果有需要年付便宜VPS主机的可以选择商家。目前,Hostodo机房可选拉斯维加斯和迈阿密两个数据中心,且都是基于KVM虚拟+NVMe整列,年付送DirectAdmin授权,需要发工单申请。(如何...

HoRain Cloud:国内特价物理机服务器,镇江机房,内地5线BGP接入,月付499元起

horain怎么样?horain cloud是一家2019年成立的国人主机商家,隶属于北京辰帆科技有限公司,horain持有增值电信业务经营许可证(B1-20203595),与中国电信天翼云、腾讯云、华为云、UCloud、AWS等签署渠道合作协议,主要提企业和个人提供云服务器,目前商家推出了几款特价物理机,都是在内地,性价比不错,其中有目前性能比较强悍的AMD+NVMe系列。点击进入:horain...

Webhosting24:€15/年-AMD Ryzen/512MB/10GB/2TB/纽约&日本&新加坡等机房

Webhosting24是一家始于2001年的意大利商家,提供的产品包括虚拟主机、VPS、独立服务器等,可选数机房包括美国洛杉矶、迈阿密、纽约、德国慕尼黑、日本、新加坡、澳大利亚悉尼等。商家VPS主机采用AMD Ryzen 9 5950X CPU,NVMe磁盘,基于KVM架构,德国机房不限制流量,网站采用欧元计费,最低年付15欧元起。这里以美国机房为例,分享几款套餐配置信息。CPU:1core内存...

天气预报webservice为你推荐
avbAVBⅢ首选的治疗措施是什么?以图搜人怎样人肉搜人?只知道他名字和当初居住的地址腾讯年终奖腾讯工作怎么样数据统计分析表如何用Excel做数据分析?网际速递原来联通的网络网际速递效果很好,现在支持移动吗?竞争对手的主要优势竞争者的有事和劣势主要体现在哪些方面语音合成系统求一免费语音合成软件(能将文字转换成语音,还能加背景音乐的)谢谢重启springboard电脑重启,一直自己按c同桌一百学习网站同桌100学习网怎样收费大智慧网上交易使用大智慧网上交易系统是怎么计费的
天津服务器租赁 t牌 oneasiahost sugarsync 163网 服务器日志分析 tk域名 免费网络电视 七夕促销 admit的用法 lol台服官网 服务器合租 酷番云 申请网站 789 防cc攻击 购买空间 阿里云邮箱申请 hdchina 酷锐 更多