597
阿里云
OBJECTC SDK 使用手册__使用SDK调用已开放API_SDK_API 网关-阿里云
1. 前言
本套程序是阿里云API网关团队提供给用户的API网关的HTTP底层通讯SDK,适用于在移动端调用已接入API网关的私有、公开API以及目前在数据市场上售卖的API。
本SDK实现了API网关的签名算法和一系列Http调用,解决用户的HTTP通讯问题,用户可以在本SDK上层包装自己的API。我们同时提供了封装好的framework形式的第三方库和源码。
如果您有定制化需求,可以直接把源码下载到你的项目中修改后使用;如果您只是简单的调用,直接使用我们提供封装好的framework版本即可。
源码所在地址为https://github.com/aliyun/api-gateway-demo-sign-objectc,源码的细节请点击进去查看。
本SDK具体提供了一下五种HTTP通讯接口:
- Http Get
- Http Post Form
- Http Post Bytes
- Http Put Bytes
- Http Delete
封装好的framework的SDK在CloudApiSdk.framework文件夹内,文件的结构:
- CloudApiSdk.framework
- CloudApiSdk
封装好的SDK二进制文件,可同时在模拟器和真机中运行
- Headers文件夹
可直接调用的头文件
- AppConfiguration.h
SDK的配置设置
- CloudApiSdk.h
Http工具类,负责发送HTTP请求
- HttpConstant.h
Http常量类
- AppConfiguration.h
- CloudApiSdk
本封装好的SDK只支持iOS 6.0以上的平台。
2. 安装API网关 OBJECTC SDK
2.1 下载SDK
在API网关控制台左侧找到SDK及示例
菜单,点击前往SDK下载页面。
根据页面提示查看使用手册
或者前往下载SDK
。需要注意区分代码示例及SDK,代码示例
适用于不准备使用SDK的用户参考代码完成API调用工作,而SDK
可以帮助用户简化API调用工作。
点击前往下载SDK
链接后,浏览器会打开新页面,该页面为阿里云移动服务的SDK下载页面。在下载页面上勾选API网关
,然后点击下载iOS版
按钮,根据页面提示下载到API网关的OBJECTC SDK。
2.2 把SDK引入你的项目
您可以像引用其他第三方库一样引入本SDK到您的项目中去:
1, 把SDK的”CloudApiSdk.framework”文件夹下载到本地,复制到项目放置第三方的文件夹内;
2, 用Xcode打开iOS项目,点击”TARGETS”->”项目名称”->”Build Phases”->”Link Binary With Libraries”->”+”;
3, 在弹出来的选择Tab页中点击左下角的”Add Other…”,然后选择刚才复制进项目的”CloudApiSdk.framework”文件夹。
引入成功后可以在项目的Frameworks看到刚才添加进去的”CloudApiSdk.framework”,点击进去看,可以看到本文上面提到的三个头文件。
2.3 工程中引入头文件
#import <CloudApiSdk/CloudApiSdk.h>
2.4 初始化SDK
本SDK需要将你的AppKey和AppSecret初始化后,才能正常使用,初始化的语句参考Demo/ApiClient.m的init方法:
- (instancetype)init {
self = [super init];
if (self) {
[[AppConfiguration instance] setAPP_KEY:@""];
[[AppConfiguration instance] setAPP_SECRET:@""];
}
return self;
}
2.4 调用SDK
然后可以调用CloudApiSdk类发送各种类型的Http请求:
2.4.1 API的包装类ApiClient调用CloudApiSdk实现HTTP通讯
- (void) sendHttpGetDemo:(NSInteger) userId
sex:(NSString *) sex
age:(NSInteger) age
completionBlock:(void (^)(NSData * , NSURLResponse * , NSError *))completionBlock
{
//定义Path
NSString * path = @"/v3/getUserTest/[userId]";
//定义PathParameter
NSMutableDictionary *pathParams = [[NSMutableDictionary alloc] init];
[pathParams setValue:[NSString stringWithFormat:@"%ld" , userId] forKey:@"userId"];
//定义QueryParameter
NSMutableDictionary *queryParams = [[NSMutableDictionary alloc] init];
[queryParams setValue:sex forKey:@"sex"];
//定义HeaderParameter
NSMutableDictionary *headerParams = [[NSMutableDictionary alloc] init];
[headerParams setValue:[NSString stringWithFormat:@"%ld" , age] forKey:@"age"];
[[CloudApiSdk instance] httpGet: CLOUDAPI_HTTP
host: HOST
path: path
pathParams: pathParams
queryParams: queryParams
headerParams: headerParams
completionBlock: completionBlock];
}
2.4.2 界面调用ApiClient实现业务逻辑
- (IBAction)SendGetRequestAction {
[[ApiClient instance] sendHttpGetDemo:10000094
sex:@"boy"
age:18
completionBlock:^(NSData * _Nullable body , NSURLResponse * _Nullable response, NSError * _Nullable error) {
dispatch_async(dispatch_get_main_queue(), ^{
NSString *bodyString = [[NSString alloc] initWithData:body encoding:NSUTF8StringEncoding];
[[ResultModel instance] setResultString:[NSString stringWithFormat:@"Http Get Response object:%@nHttp Get Response Body:n%@" , response , bodyString]];
[self performSegueWithIdentifier:@"getResultSegue" sender:nil];
});
}];
}
3. 调用示例
本SDK提供图形调用示例给大家参考,调用示例代码说明如下在:https://github.com/aliyun/api-gateway-demo-sign-objectc/tree/master/sdk/demo,调用代码的说明如下。
- Demo
- ApiClient.m/ApiClient.h
测试API接口类,提供所有测试API的调用接口
- ResultModel.m/ResultModel.h
调用结果缓存类
- SendRequestViewController.m/SendRequestViewController.h
发送请求界面
- ShowResultViewController/ShowResultViewController
显示服务器返回结果界面
- ApiClient.m/ApiClient.h
如果在使用中遇到棘手的问题,请加入我们官方旺旺群来找我们,群号:1640106170
最后更新:2016-11-23 16:04:20
上一篇:
Android SDK 使用手册__使用SDK调用已开放API_SDK_API 网关-阿里云
下一篇:
API 网关服务条款__相关协议_API 网关-阿里云
设置 IP 防火墙__用户指南_云数据库 Memcache 版-阿里云
修改账号备注__账号管理_API 参考_云数据库 RDS 版-阿里云
使用前须知__快速入门(MySQL)_云数据库 RDS 版-阿里云
DetachPolicyFromRole__授权策略管理接口_RAM API文档_访问控制-阿里云
示例项目__Java SDK_SDK参考_E-MapReduce-阿里云
到期与欠费__购买指南_E-MapReduce-阿里云
1.4 导入数据__快速入门_分析型数据库-阿里云
日志导出工具__开发者工具_消息服务-阿里云
修改流控策略__流量控制相关接口_API_API 网关-阿里云
阿里云与芯讯通SIMCom——互联网生态与垂直行业的深度融合
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云