mpaas RPC

作者: 艾泽拉斯大祭司 | 来源:发表于2019-08-26 14:23 被阅读0次

    1、配置工程

    为保证客户端能成功请求到服务端,需在客户端配置网关地址;同时为防止客户端请求被篡改和伪造,还需对请求数据进行加签。

    2、配置网关

    需要客户端在 

     的 category 中重写以下的接口方法,指定 RPC 的网关地址;

    网关地址

    3、配置秘钥

    RPC 请求有签名机制,客户端使用的签名密钥保存在无线保镖图片中,需要通过在 DTRpcInterface 的 category 中重写下面的接口方法,指定给 RPC 加密的密钥名称。

    密钥名称

    ⚠️使用 Xcode 插件添加 RPC 模块后,会自动从工程元数据中读取网关地址和加签信息,设置到当前工程中,无需修改。

    4、全局配置

    RPC 在使用之前需要全局配置 V2,在第一个 RPC 发起之前调用下面的代码即可。

    applicationDidFinishLaunching中配置就可以

    5、生成 RPC 代码

    当 App 在移动网关控制台接入后台服务后,即可下载客户端的 RPC 代码

    下载代码

    6、发送请求

    将下载好的代码拽到工程中,RPC 请求必须在子线程调用,可使用 RPC 模块中, DTRpcAsyncCaller 封装的子线程调用接口,回调方法默认为主线程。代码示例如下

    - (void)sendRpc

    {

    __block RPCDemoLoginResult *result =nil;

        [DTRpcAsyncCaller callAsyncBlock:^{

    @try

            {

                RPCDemoLoginRequest *req = [[RPCDemoLoginRequest alloc] init];

    req.loginId =@"alipayAdmin";

    req.loginPassword =@"123456";

                RPCDemoAuthLoginPostReq *loginPostReq = [[RPCDemoAuthLoginPostReq alloc] init];

                loginPostReq._requestBody = req;

                RPCDemoCloudpay_accountClient *service = [[RPCDemoCloudpay_accountClient alloc] init];

                result = [service authLoginPost:loginPostReq];

            }

    @catch(NSException*exception) {

    NSLog(@"%@", exception);

            }

        } completion:^{

    NSString*str =@"";

    if(result && result.success) {

    str =@"登录成功";

    }else{

    str =@"登录失败";

            }

    UIAlertView*alert = [[UIAlertViewalloc] initWithTitle:str message:nildelegate:nil

    cancelButtonTitle:nilotherButtonTitles:@"ok",nil];

            [alert show];

        }];

    }

    相关文章

      网友评论

          本文标题:mpaas RPC

          本文链接:https://www.haomeiwen.com/subject/erwrectx.html