登录授权
更新时间:2025-07-04 11:30:46
专属版需要设置authToken完成登录鉴权操作,只有登录成功,才可以调用云、SD卡等相关接口和操作设备
// 导入账号管理SDK头文件
#import <RTCXOpenAccountCloud/RTCXOpenAccountCloud.h>
// 私有化部署相关接口
@protocol RTCXPrivatizedAccountProtocol <RTCXOpenAccountProtocol>
/**
* authToken鉴权,(仅适用于私有化部署的调用)
*
* @param req 请求参数对象
* @param onSuccess 成功回调
* @param onError 失败回调
*/
- (void)authenticateTokenWithReq:(nonnull RTCXPrivatizedAccountLoginReq *)req onSuccess:(nullable RTCXOpenAccountOnSuccess)onSuccess onError:(nullable RTCXOpenAccountOnError)onError;
/**
* 使authToken失效,(仅适用于私有化部署的调用)
*
* @param onSuccess 成功回调
* @param onError 失败回调
*/
- (void)invalidateAuthTokenOnSuccess:(nullable RTCXOpenAccountOnSuccess)onSuccess onError:(nullable RTCXOpenAccountOnError)onError;
@end
使用 RTCXOpenAccountSDK 宏对象调用示例如下:
授权登录
// 鉴权authToken
RTCXPrivatizedAccountLoginReq *req = [[RTCXPrivatizedAccountLoginReq alloc] init];
req.authToken = oAuthCode;// @"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTIsImxpY2Vuc2VJZCI6MSwicHJvZHVjdEtleSI6IkZHS0FaUm5BaGlKSmdLa2xKTGlTIiwiZGV2aWNlTmFtZSI6ImRzbVByaXZhdGVfMDEiLCJyYW5kIjoiZTQ4OWNkMzgwNWZlMjE0MmQ0MGEiLCJleHAiOjE3NTE0NDQxNTh9.YHCp4_Z25gy_o3Nl9r-3qtZKOgleQAl2GisTXaaD6hQ";
[RTCXService(RTCXPrivatizedAccountProtocol) authenticateTokenWithReq:req onSuccess:^(id _Nullable data, id _Nullable rawData) {
[self stopLoading];
[self showToast:@"登录成功"];
PrivatizedDeviceListVC *vc = [[PrivatizedDeviceListVC alloc] init];
[weakSelf.navigationController pushViewController:vc animated:YES];
} onError:^(NSError * _Nullable error) {
[self stopLoading];
[self showToast:[NSString stringWithFormat:@"%ld : %@",error.code,error.userInfo[NSLocalizedFailureReasonErrorKey]]];
}];
退出登录
// 失效authToken
[RTCXService(RTCXPrivatizedAccountProtocol) invalidateAuthTokenOnSuccess:^(id _Nullable data, id _Nullable rawData) {
[self.navigationController popViewControllerAnimated:YES];
} onError:^(NSError * _Nullable error) {
}];