如何在iPhone中声明自定义协议

时间:2010-05-10 12:30:48

标签: iphone hessian

我想使用协议,我们如何在iPhone中实现它。

  

///在POCViewController.h中

     

#import

     

@protocol BasicAPI    - (的NSString *)你好;   @结束   @interface HessianPOCViewController:UIViewController   {    idbasicAPI;

     

}

     

@end

///

  

//在POCViewController.m中   //在某些方法中

     

NSURL * url = [NSURL   URLWithString @ “http://www.caucho.com/hessian/test/basic”];

     

id proxy =   (ID)[CWHessianConnection   proxyWithURL:网址   协议:@protocol(basicAPI)];

     

NSLog(@“hello:%@”,[proxy hello]);

     

////

请帮助我如何实现上述代码?

2 个答案:

答案 0 :(得分:2)

在上面的代码片段中 - @protocol块进入头文件,位于已经存在的@end声明下面。常见用例类似于:

@interface MyClass
// properties, method definitions, etc
@end

@protocol BasicAPI

-(NSString*)hello;

@end

然后在实现文件的某个方法体中,MyClass.m

-(void)myMethod { 
   NSURL* url = [NSURL URLWithString@"http://www.caucho.com/hessian/test/basic"];
   id proxy = (id)[CWHessianConnection proxyWithURL:url protocol:@protocol(basicAPI)];
   NSLog(@"hello: %@", [proxy hello]);
}

答案 1 :(得分:0)

我看到您提供的示例来自Hessian Objective-C implementation的文档。它向您展示了如何从Objective-C客户端与Hessian Web服务进行交互。

您是否有现有的Hessian网络服务?如果是这样,您需要在@protocol块中声明该服务的接口。 this question的答案给出了一些很好的例子,说明了它如何在客户端和客户端上工作。服务器端。