第一部分 连接webservice,获取天气预报
主要用到的类
NSMutableURLRequest、NSURLConnection、NSData等。主要代码如下:
NSString *soapMsg=[NSStringstringWithFormat:@"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">"
"<soap:Body>"
"<getWeatherbyCityName xmlns=\"http://WebXml.com.cn/\">"
"<theCityName>%@</theCityName>"
"</getWeatherbyCityName>"
"</soap:Body>"
"</soap:Envelope>",@"郑州"
];
NSURL *url=[NSURLURLWithString:@"http://www.webxml.com.cn/WebServices/WeatherWebService.asmx"];
NSString *msgLength=[NSString stringWithFormat:@"%d",[soapMsg length]];
NSMutableURLRequest *request=[NSMutableURLRequestrequestWithURL:url];
[requestaddValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request addValue: msgLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPMethod:@"POST"];
[requestsetHTTPBody:[soapMsg dataUsingEncoding:NSUTF8StringEncoding]];
NSData *data=[NSURLConnectionsendSynchronousRequest:request returningResponse:nilerror:nil];
NSMutableString *result=[[NSMutableStringalloc]initWithData:dataencoding:NSUTF8StringEncoding];
NSLog(@"获得结果是%@",result);
得到的结果是:
<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><getWeatherbyCityNameResponse xmlns="http://WebXml.com.cn/"><getWeatherbyCityNameResult><string>河南</string><string>郑州</string><string>57083</string><string>57083.jpg</string><string>2012-8-28 10:33:48</string><string>22℃/32℃</string><string>8月28日 晴</string><string>无持续风向微风</string><string>0.gif</string><string>0.gif</string><string>今日天气实况:气温:26℃;风向/风力:西风 3级;湿度:67%;空气质量:较差;紫外线强度:很强</string><string>穿衣指数:天气炎热,建议着短衫、短裙、短裤、薄型T恤衫、敞领短袖棉衫等清凉夏季服装。
感冒指数:暂无。
运动指数:天气较好,较适宜在户内开展低强度的运动,户外运动注意防晒。
洗车指数:适宜洗车,未来持续两天无雨天气较好,适合擦洗汽车,蓝天白云、风和日丽将伴您的车子连日洁净。
晾晒指数:天气不错,极适宜晾晒。抓紧时机把久未见阳光的衣物搬出来晒晒太阳吧!
旅游指数:天气晴朗,风和日丽,万里无云,但稍感觉有些热,不过还是个好天气哦。适宜旅游,可不要错过机会呦!
路况指数:天气较好,路面比较干燥,路况较好。
舒适度指数:天气较好,但会使您感到有些热,不很舒适。
空气污染指数:气象条件较不利于空气污染物稀释、扩散和清除,请适当减少室外活动时间。
紫外线指数:紫外线辐射极强,建议涂擦SPF20以上、PA++的防晒护肤品,尽量避免暴露于日光下。</string><string>23℃/35℃</string><string>8月29日 晴</string><string>无持续风向微风</string><string>0.gif</string><string>0.gif</string><string>23℃/33℃</string><string>8月30日 晴</string><string>无持续风向微风</string><string>0.gif</string><string>0.gif</string><string>郑州是河南省省会,位于黄河南25公里。是河南省的政治、经济、文化中心。现有人口627万。京广、陇海铁路在此交会,为中国铁路交通的重要枢纽之一。郑州是一个古老的城市,早在3500年前,就是商王朝的都邑。由于其地处黄河中游,历史上常受到黄河水灾的威胁,致使郑州经济发展缓慢。到十七世纪,城墙也只有4.5公里长。十九世纪初,由于陇海铁路和京广铁路的建成,郑州成为中国东西、南北大动脉的纽带,它的经济地位才逐步开始上升。郑州绿化覆盖率达35.5%,被誉为"中原绿城"。郑州气候温和,四季分明。年平均气温14。3℃。七月份最热,月平均气温27。3℃。一月份最冷,月平均气温为-0.2℃。春秋两季天高气爽,百花齐放,为旅游最佳季节。郑州历史悠久,文化灿烂,旅游资源丰富。轩辕黄帝故里、裴李岗文化遗址、大河村遗址、商城遗址等记载了她8000多年的文明史,以黄河游览区、大河村遗址为主的黄河有中国特色文化旅游群和以少林寺、嵩山国家森林公园为主的嵩山风景名胜区给郑州增添了无穷的魅力。以"山、河、古、根、拳"为主要特征的各类旅游点150多处。其中,闻名中外的嵩山少林寺是中国佛教禅宗和少林功夫的摇篮;黄河大观、黄河游览区和花园口旅游区向游客展示黄河辉煌灿烂的历史文化和多姿多彩的民俗风情;黄帝故里和故都说明了这里是华夏文明的重要发祥地。</string></getWeatherbyCityNameResult></getWeatherbyCityNameResponse></soap:Body></soap:Envelope>