一个针对 iOS 平台的轻量级 Web 服务客户端框架。
PicoKit 最初是 pico 的分支。
Pico(和相关项目:mxjc,mwsc & nano)是由 bulldog2011 开发的,但从 2013 年起就保持原样。由于其设计和实现非常优秀,我决定将其分支并升级以支持 ARC,并通过 CocoaPods 提供它。
您可以通过 CocoaPods 获取 PicoKit。要安装它,只需将以下行添加到您的 Podfile 中
pod 'PicoKit'
将整个 Pico 源代码包含到您的项目中。如果您选择此选项,请确保
-ObjC
标志添加到 "其他链接器标志"。/usr/include/libxml2
添加到 "头文件搜索路径"。libxml2.dylib
。从 wsdl 生成的服务代理后,通过 Pico 运行时调用服务非常简单
// start progress activity
[self.view makeToastActivity];
// Get shared service client
StockQuoteServiceClient *client = [StockQuoteServiceClient sharedClient];
client.debug = YES; // enable request/response message logging
// Build request object
GetQuote *request = [[GetQuote alloc] init];
request.symbol = _symbolText.text;
// make API call and register callbacks
[client getQuote:request success:^(GetQuoteResponse *responseObject) {
// stop progress activity
[self.view hideToastActivity];
// show result
_resultText.text = responseObject.getQuoteResult;
} failure:^(NSError *error, id<PicoBindable> soapFault) {
// stop progress activity
[self.view hideToastActivity];
if (error) { // http or parsing error
[self.view makeToast:[error localizedDescription] duration:3.0 position:@"center" title:@"Error"];
} else if (soapFault) {
SOAP11Fault *soap11Fault = (SOAP11Fault *)soapFault;
[self.view makeToast:soap11Fault.faultstring duration:3.0 position:@"center" title:@"SOAP Fault"];
}
}];
所有样本均位于 示例 文件夹中,以下包含了这些样本
XML Schema数据类型 | Objective-C数据类型 |
---|---|
xsd:base64Binary | NSData |
xsd:boolean | NSNumber |
xsd:byte | NSNumber |
xsd:date | NSDate |
xsd:dateTime | NSDate |
xsd:decimal | NSNumber |
xsd:double | NSNumber |
xsd:duration | NSString |
xsd:float | NSNumber |
xsd:g | NSDate |
xsd:hexBinary | NSData |
xsd:int | NSNumber |
xsd:integer | NSNumber |
xsd:long | NSNumber |
xsd:NOTATION | NSString |
xsd:Qname | NSString |
xsd:short | NSNumber |
xsd:string | NSString |
xsd:time | NSDate |
xsd:unsignedByte | NSNumber |
xsd:unsignedInt | NSNumber |
xsd:unsignedShort | NSNumber |
版本 | 日期 | 描述 |
---|---|---|
0.5.0 | 2013年3月25日 | 初始版本 |
0.6.1 | 2015年4月10日 | 支持ARC & CocoaPods |
0.7.0 | 2015年8月10日 | 升级到AFNetworking 2.5.4 |
0.7.1 | 2015年9月29日 | 升级到iOS9 & AFNetworking 2.6.0 |
PicoKit可在MIT许可下获得。有关更多信息,请参阅LICENSE文件。