`
jsntghf
  • 浏览: 2511854 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

使用wsdl2objc实现Soap

    博客分类:
  • iOS
阅读更多

wsdl2objc是一个开源库,根据wsdl将web service转化成objc的接口和数据结构。

 

调用示例:

 

- (IBAction)buttonPressed:(id)sender {
	LocalTimeSoapBinding *binding = [[LocalTime LocalTimeSoapBinding] initWithAddress:@"http://www.ripedevelopment.com/webservices/LocalTime.asmx"];
	binding.logXMLInOut = YES;  // to get logging to the console.
	
	LocalTime_LocalTimeByZipCode *request = [[LocalTime_LocalTimeByZipCode alloc] init];
	request.ZipCode = @"29687"; // insert your zip code here.
	
	LocalTimeSoapBindingResponse *resp = [binding LocalTimeByZipCodeUsingParameters:request];
	for (id mine in resp.bodyParts) {
		if ([mine isKindOfClass:[LocalTime_LocalTimeByZipCodeResponse class]]) {
			field.text = [mine LocalTimeByZipCodeResult];
		}
	}
    [request release];
}

 

控制台输出:

 

OutputHeaders:
{
    "Content-Length" = 466;
    "Content-Type" = "text/xml; charset=utf-8";
    Host = "www.ripedevelopment.com";
    SOAPAction = "http://www.ripedev.com/LocalTimeByZipCode";
    "User-Agent" = wsdl2objc;
}
OutputBody:
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:LocalTime="http://www.ripedev.com/" xsl:version="1.0">
  <soap:Body>
    <LocalTime:LocalTimeByZipCode>
      <LocalTime:ZipCode>29687</LocalTime:ZipCode>
    </LocalTime:LocalTimeByZipCode>
  </soap:Body>
</soap:Envelope>
ResponseStatus: 200
ResponseHeaders:
{
    "Cache-Control" = private;
    Connection = close;
    "Content-Encoding" = gzip;
    "Content-Length" = 233;
    "Content-Type" = "text/xml; charset=utf-8";
    Date = "Sat, 21 Jul 2012 06:52:05 GMT";
    Expires = "Sat, 21 Jul 2012 06:52:35 GMT";
    Server = "Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.8e-fips-rhel5 mod_mono/2.6 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_jk/1.2.28 mod_perl/2.0.4 Perl/v5.8.8";
    Vary = "Accept-Encoding,User-Agent";
    "X-AspNet-Version" = "2.0.50727";
}
ResponseBody:
<?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><LocalTimeByZipCodeResponse xmlns="http://www.ripedev.com/"><LocalTimeByZipCodeResult>7/21/2012 2:52:05 AM</LocalTimeByZipCodeResult></LocalTimeByZipCodeResponse></soap:Body></soap:Envelope>
分享到:
评论

相关推荐

    WSDL2Objc下载工具

    在实际应用中,使用WSDL2Objc的步骤大致如下: 1. 获取WSDL文件:Web服务提供者通常会提供一个WSDL文件,描述服务的接口。 2. 安装WSDL2Objc:下载并安装这个工具,确保它在系统的PATH环境变量中可用。 3. 转换WSDL...

    WSDL2ObjC rev110

    4. **处理SOAP消息**:SOAP(Simple Object Access Protocol)是Web服务常用的一种通信协议,WSDL2ObjC会根据WSDL中的SOAP绑定生成对应的SOAP消息构建和解析代码。 5. **集成与使用**:生成的Objective-C代码可以...

    WSDL2Objc(iphone)

    2. **运行WSDL2Objc**:然后,使用WSDL2Objc工具将这个WSDL文件转换成Objective-C代码。这个工具会生成一系列的类,这些类封装了与Web服务交互所需的逻辑。 3. **导入生成的代码**:将生成的Objective-C文件添加到你...

    WSDL2ObjC.app.zip

    - **兼容性**:确保WSDL文件是有效的,且所使用的SOAP版本(如1.1或1.2)与WSDL2ObjC.app支持的版本一致。 - **安全性**:如果SOAP服务需要身份验证,需要在生成的代码中添加相应的认证信息。 - **异常处理**:生成...

    wsdl2objc mac

    This project is a replacement for Apple's WSMakeStubs utility and WS-Core. mac, soap, cocoa, webservicescore, wsdl, xslt, osx, xml, nsxml, cfnetwork, carbon

    ios wsdl2obj

    在iOS开发中,如果你需要与Web服务进行交互,尤其是使用SOAP(Simple Object Access Protocol)协议时,`wsdl2obj` 是一个非常有用的工具。SOAP是一种XML格式的协议,用于在分布式环境中交换结构化和类型化的信息。...

    iOS通过Soap请求WSDL的例子

    安装好WSDL2OBJC后,使用它来处理WSDL文件。将你的WSDL服务URL输入到工具中,它会生成一系列Objective-C类,这些类封装了与服务交互所需的所有方法。生成的代码通常包括一个服务代理类和服务操作类。服务代理类用于...

    wsdl解析工具

    根据提供的文件名“WSDL2ObjC.app”,这似乎是一个将WSDL描述转换为Objective-C代码的工具,适用于iOS和macOS开发。这类工具能够帮助Objective-C开发者快速创建与Web服务的接口,生成的代码可以直接在Xcode项目中...

    用于object-C 的PHP Soap搭建

    - 使用WSDL2ObjC工具根据WSDL生成iOS端可以调用的代码。 - 配置iOS项目的Build Settings,包括添加libxml2支持和设置正确的头文件搜索路径。 - 将生成的代码添加到iOS项目中,并调用对应的方法发送SOAP请求。 - 遇到...

    如何用IOS调用WebService(SOAP接口)

    本篇文章将介绍如何在iOS中调用WebService(SOAP接口),主要分为两种方法:一是使用WSDL2ObjC工具生成Objective-C类,二是通过网络请求直接解析XML响应。 ### 方法一:使用WSDL2ObjC工具 1. **获取WSDL文件**:...

Global site tag (gtag.js) - Google Analytics