苏飞论坛

标题: IOS中使用ASIHTTPRequest調用WCF服務 [打印本页]

作者: Koson    时间: 2012-12-27 11:55
标题: IOS中使用ASIHTTPRequest調用WCF服務
摘自自己csdn博文,是直接copy過來的,請見諒,希望多多交流:

最近開始接觸ios項目的開發。之前使用本地數據庫做的是offline的project。現在開始嘗試去從其他平台上拿數據。ios project是基於mac系統上的。但需要去調用windows系統上的服務。微軟有一個不錯的框架wcf.話不多說,直接看代碼吧!

首先是wcf服務。

數據交換實體(字數限制,代碼略)

服務實現(字數限制,代碼略)


在web.config中将绑定方式改成webHttpBinding

服務器上發佈服務(iis)

接下來ios端

使用ASIHTTPRequest,是直接在CFNetwork上做的开源项目,提供了一个很方便更强大的HTTP网络传输的封装。

定义下面三个方法對應三个button的点击事件:

  1.     - (IBAction)fetXML:(id)sender;  
  2.     - (IBAction)fetJson:(id)sender;  
  3.     - (IBAction)createJson:(id)sender;

  4.     具體實現

  5.     - (IBAction)fetXML:(id)sender  
  6.     {  
  7.         NSURL *url = [NSURL URLWithString:@"http://192.168.112.220:2194/Service1.svc/CustomerXML/Koson"];  
  8.         ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];  
  9.         [request startSynchronous];  
  10.         NSError *error = [request error];  
  11.         if (!error) {  
  12.             NSString *response = [request responseString];  
  13.             UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"xml格式"
  14.                                                                 message:response  
  15.                                                                delegate:nil  
  16.                                                       cancelButtonTitle:@"OK"
  17.                                                       otherButtonTitles:nil];  
  18.             [alertView show];  
  19.             [alertView release];  
  20.         }  
  21.         }  
  22.     - (IBAction)fetJson:(id)sender  
  23.     {  
  24.         NSURL *url = [NSURL URLWithString:@"http://192.168.112.220:2194/Service1.svc/Customer/Koson"];  
  25.         ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];  
  26.         [request startSynchronous];  
  27.         NSError *error = [request error];  
  28.         if (!error) {  
  29.             NSString *response = [request responseString];  
  30.             UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"json格式"
  31.                                                                 message:response  
  32.                                                                delegate:nil  
  33.                                                       cancelButtonTitle:@"OK"
  34.                                                       otherButtonTitles:nil];  
  35.             [alertView show];  
  36.             [alertView release];  
  37.         }  
  38.     }
  39.     - (IBAction)createJson:(id)sender  

  40.     {  
  41.         NSURL *url = [NSURL URLWithString:@"http://192.168.112.220:2194/Service1.svc/Customer/Koson/2006-09-20"];  
  42.         ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];  
  43.         [request setRequestMethod:@"POST"];  
  44.         [request startSynchronous];  
  45.         NSError *error = [request error];  
  46.         if (!error) {  
  47.             NSString *response = [request responseString];  
  48.             UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"创建k客戶"
  49.                                                                 message:response  
  50.                                                                delegate:nil  
  51.                                                       cancelButtonTitle:@"OK"
  52.                                                       otherButtonTitles:nil];   
  53.            [alertView show];  
  54.             [alertView release];  
  55.         }  
  56.     }
复制代码

作者: Koson    时间: 2012-12-27 11:57
第一次发帖,自己顶一下。
作者: 站长苏飞    时间: 2012-12-27 12:01
Koson 发表于 2012-12-27 11:57
第一次发帖,自己顶一下。

我来支持一下,你可以使用代码标签的,发的时候禁用表情 就不出出现这种情况了




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4