简单且可扩展的同步 JSON-RPC 客户端。
它很简单。也许太简单了,可能并不是功能完整的或完全符合规范。但它适用于真实世界项目。
它可以扩展,因为 可以轻松子类化。重新定义过程中使用的一个或所有方法。
它是同步的,因为我们有时知道我们想要什么,也知道我们将做什么。我们当然知道不应该在主线程上调用远程方法,对吧?
要运行 - 远远不完整 - 的测试,克隆仓库,并在打开 PCJSONRPC.xcworkspace
之前,从 Example 目录中运行 pod install
。
或者,在终端中一步即可完成:
$ pod try PCJSONRPC
#import <PCJSONRPC.h>
创建 JSON-RPC 客户端
NSURL *url = [NSURL URLWithString:@"http://example.com/json-rpc"];
PCJSONRPC *jsonRPC = [[PCJSONRPC alloc] initWithURL:url];
调用方法
NSError *error;
NSString *hello = [jsonRPC invokeMethod:@"echo"
withParameters:@[@"World!"]
error:&error];
定义协议
@protocol EchoService
- (id)echo:(id)params error:(NSError **)error;
@end
创建代理
id<EchoService> service =
[jsonRPC proxyForProtocol:@protocol(EchoService)];
调用方法
hello = [service echo:@[@"World!"] error:&error];
Pierre-David Bélanger,[email protected]
PCJSONRPC 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。