iOS SDK
<p> </p>
<p>1. 简介</p>
<ul>
<li>本文档主要介绍 OBS iOS SDK 的接口使用及注意事项;</li>
<li>并且假设您是平安云用户,且已经开通了OBS服务;</li>
<li>如果您还没有开通或者还不了解平安云 OBS 服务,请登录<a href="/ssr/products/OBS" target="_blank">OBS产品主页</a>进行了解。</li>
<li>OBS-iOS-SDK 是由平安云团队开发的工具包。便于开发者在 iOS 上方便使用平安云当中的 OBS 服务。</li>
</ul>
<p>文档主要罗列了 OBS-iOS-SDK 中,上传、下载以及删除的一些基本方法,并对方法参数进行简要解释,且对响应方法有一个详细的说明。</p>
<p>2. SDK下载</p>
<p>IOS SDK 开发包最新版本 <a href="https://pcp-portal-sca.obs-cn-shenzhen.pinganyun.com/sdk%2Fobs-iOS-sdk-1.0.3.zip?response-content-disposition=attachment%3Bfilename%3Dobs-iOS-sdk-1.0.3.zip" target="_blank">v1.0.3</a></p>
<p>IOS Demo <a href="http://iobs.pingan.com.cn/download/iobs-dmz-dev-aid/ObsTest_demo?attname=" target="_blank">下载</a></p>
<p>签名服务Demo <a href="http://iobs.pingan.com.cn/download/iobs-dmz-dev-aid/sign-demo?attname=" target="_blank">JAVA版下载</a></p>
<p>3. API概览</p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>API</p>
</th>
<th>
<p>描述</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>initWithTokenGeter</p>
</td>
<td>
<p>初始化服务</p>
</td>
</tr>
<tr>
<td>
<p>initWithBackupHosts</p>
</td>
<td>
<p>使用备用域名生成上传实例</p>
</td>
</tr>
<tr>
<td>
<p>putFileWithData</p>
</td>
<td>
<p>上传 data 文件</p>
</td>
</tr>
<tr>
<td>
<p>putFileWithPath</p>
</td>
<td>
<p>根据路径上传文件</p>
</td>
</tr>
<tr>
<td>
<p>uploadImage</p>
</td>
<td>
<p>上传图片并压缩</p>
</td>
</tr>
<tr>
<td>
<p>sliceUploadFileWithPath</p>
</td>
<td>
<p>分片上传文件</p>
</td>
</tr>
<tr>
<td>
<p>downloadWithBucket</p>
</td>
<td>
<p>下载文件</p>
</td>
</tr>
</tbody>
</table>
<p>4. API描述</p>
<p><strong>(1) initWithTokenGeter</strong></p>
<p><strong>接口描述</strong></p>
<p>基础初始化方法</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>tokenGeter</p>
</td>
<td>
<p>IOBSTokenGeter</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>获取token回调</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>instancetype</p>
</td>
<td>
<p>IOBSUploadToken</p>
</td>
<td>
<p>上传管理类实例</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>(2) initWithBackupHosts</strong></p>
<p><strong>接口描述</strong></p>
<p><strong>使用备用域名生成上传实例</strong></p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>hosts</p>
</td>
<td>
<p>NSArray *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>备用域名池</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>tokenGeter</p>
</td>
<td>
<p>IOBSTokenGeter</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>获取token回调</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>instancetype</p>
</td>
<td>
<p>IOBSUploadToken</p>
</td>
<td>
<p>上传管理类实例</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>(3) putFileWithData</strong></p>
<p><strong>接口描述</strong></p>
<p>传 data 文件</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>fileData</p>
</td>
<td>
<p>NSData *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>获取token回调</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>bucket</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传到指定 bucket 名称</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>key</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>True</p>
</td>
<td>
<p>上传对应 bucket 里文件的 key</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>option</p>
</td>
<td>
<p>IOBSUploadOption *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传时传入的可选参数实现上传文件时候的进度查看</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>baseUrl</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>基础域名 e.g</p>
<p>@”obs-cn-shenzhen.yun.pingan.com”</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>Complete</p>
<p>Handler</p>
</td>
<td>
<p>IOBSUploadCompletionHandler</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传完成后的回调函数</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<p>无</p>
<p><strong>(4) putFileWithPath</strong></p>
<p><strong>接口描述</strong></p>
<p>根据路径上传文件</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>path</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传路径</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>bucket</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传到指定 bucket 名称</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>key</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传对应 bucket 里文件的 key</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>option</p>
</td>
<td>
<p>IOBSUploadOption *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传时传入的可选参数实现上传文件时候的进度查看</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>baseUrl</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>基础域名 e.g</p>
<p>@”obs-cn-shenzhen.yun.pingan.com”</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>Complete</p>
<p>Handler</p>
</td>
<td>
<p>IOBSUploadCompletionHandler</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传完成后的回调函数</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<p>无</p>
<p><strong>(5) uploadImage</strong></p>
<p><strong>接口描述</strong></p>
<p>上传图片并压缩</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>image</p>
</td>
<td>
<p>UIImage *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传图片</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>scale</p>
</td>
<td>
<p>CGFloat</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>压缩比例(图片尺寸根据比例压缩)</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>bucket</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传到指定 bucket 名称</p>
</td>
<td>
<p>bucket</p>
</td>
</tr>
<tr>
<td>
<p>key</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传对应 bucket 里文件的 key</p>
</td>
<td>
<p>key</p>
</td>
</tr>
<tr>
<td>
<p>option</p>
</td>
<td>
<p>IOBSUploadOption *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传时传入的可选参数实现上传文件时候的进度查看</p>
</td>
<td>
<p>option</p>
</td>
</tr>
<tr>
<td>
<p>baseUrl</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>基础域名 e.g</p>
<p>@”obs-cn-shenzhen.yun.pingan.com”</p>
</td>
<td>
<p>baseUrl</p>
</td>
</tr>
<tr>
<td>
<p>Complete</p>
<p>Handler</p>
</td>
<td>
<p>IOBSUploadCompletionHandler</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传完成后的回调函数</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<p>无</p>
<p><strong>(6) sliceUploadFileWithPath</strong></p>
<p><strong>接口描述</strong></p>
<p>分片上传文件</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>filePath</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传文件的路径</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>bucket</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传到指定 bucket 名称</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>key</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传对应 bucket 里文件的 key</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>option</p>
</td>
<td>
<p>IOBSUploadOption *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传时传入的可选参数实现上传文件时候的进度查看</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>baseUrl</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>基础域名 e.g</p>
<p>@”obs-cn-shenzhen.yun.pingan.com”</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>complete</p>
<p>Handler</p>
</td>
<td>
<p>IOBSUploadCompletionHandler</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传完成后的回调函数</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<p>无</p>
<p><strong>(7) downloadWithBucket</strong></p>
<p><strong>接口描述</strong></p>
<p>下载文件</p>
<p><strong>请求参数</strong></p>
<table>
<caption> </caption>
<thead>
<tr>
<th>
<p>参数名称</p>
</th>
<th>
<p>参数类型</p>
</th>
<th>
<p>是否必须</p>
</th>
<th>
<p>参数描述</p>
</th>
<th>
<p>备注</p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>path</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>保存路径</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>bucket</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>文件所在bucket</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>key</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>上传对应 bucket 里文件的 key</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>host</p>
</td>
<td>
<p>NSString *</p>
</td>
<td>
<p>true</p>
</td>
<td>
<p>服务器域名</p>
</td>
<td>
<p>-</p>
</td>
</tr>
<tr>
<td>
<p>complete</p>
<p>Handler</p>
</td>
<td>
<p>IOBSUploadCompletionHandler</p>
</td>
<td>
<p>false</p>
</td>
<td>
<p>上传完成后的回调函数</p>
</td>
<td>
<p>-</p>
</td>
</tr>
</tbody>
</table>
<p><strong>响应参数</strong></p>
<p>无</p>
提交成功!非常感谢您的反馈,我们会继续努力做到更好!