在我们的iOS代码库中,我们使用GRPCcall
来配置与服务器的连接。我刚刚注意到,在Objective C gRPC库中,GRPCcall
类已被弃用:
/**
* This interface is deprecated. Please use \a GRPCcall2.
*
* Represents a single gRPC remote call.
*/
注释表明我们应该改用GRPCcall2
。但是用法似乎有所不同,并且基于不同的概念。例如,GRPCcall2
上方的评论说
/**
* Call related parameters. These parameters are automatically
specified by Protobuf. If directly
* using the \a GRPCCall2 class, users should specify these parameters
manually.
*/
建议用户通常不需要使用此类。
在发布此问题时,gRPC Basics guide仍然引用GRPCcall
类(现已弃用)gRPC Object-C Quick Start guide。除了注释中的内容,我似乎找不到新的GRPCcall2
的任何文档。
例如,对于旧类,我可以做
GRPCCall.enableRetry(true, forHost: "bla")
如何通过新课程实现这一目标?
答案 0 :(得分:1)
您可以在https://github.com/grpc/grpc/blob/master/src/objective-c/tests/APIv2Tests/APIv2Tests.m中找到GRPCCall2
的用法示例。
retryEnabled
属性位于GRPCMutableCallOptions中。
您可以执行以下操作:
GRPCMutableCallOptions *options = [[GRPCMutableCallOptions alloc] init];
options.retryEnabled = YES;
GRPCCall2 *call = [[GRPCCall2 alloc]
initWithRequestOptions:requestOptions
responseHandler:handler
callOptions:options];
Objective-C examples也已更新为使用v2 API