检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
列举桶 您可以通过listBuckets来列举桶。以下代码展示如何获取桶列表: static OBSClient *client; NSString *endPoint = @"your-endpoint"; // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放
下载对象 以下代码展示如何获取对象的内容: NSString * outfilePath = [NSTemporaryDirectory() stringByAppendingString:@"filename"]; OBSGetObjectToFileRequest *request
设置桶多版本状态 您可以通过setBucketVersioning设置桶的多版本状态。OBS中的桶支持两种多版本状态: 多版本状态 说明 OBS iOS SDK对应值 启用状态 上传对象时,系统为每一个对象创建一个唯一版本号,上传同名的对象将不再覆盖旧的对象,而是创建新的不同版本号的同名对象
OBS签名机制概述 功能简介 客户端每次调用OBS API时,都需要在HTTP调用请求中携带签名信息,服务端会对收到的签名信息进行验证。签名验证的目的是: 对请求者进行身份验证,防止未授权用户访问。请求携带的签名包含用户相关信息,华为云会对请求者身份进行验证,只有已授权用户的密钥才能通过签名检查
创建桶 开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。 您可以通过ObsClient.createBucket创建桶。 带参数创建 创建桶时可以指定桶的访问权限、存储类型和区域位置
列举对象 开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。 当完成一系列上传对象操作后,可能需要查看桶中包含哪些对象。以下代码展示如何列举指定桶中的对象: obsClient.listObjects
复制对象 复制对象特性用来为OBS上已经存在的对象创建一个副本。 您可以通过copyObject来复制对象。复制对象时,可重新指定新对象的属性和设置对象权限,且支持条件复制。 简单复制 以下代码展示了如何进行简单复制: static OBSClient *client; NSString
对于加密类型的对象如何使用URL进行下载?(Java SDK) 如果是SSE-KMS方式进行加密的对象,使用URL下载时服务端会自动解密。 如果对象是SSE-C方式进行加密的对象,由于解密需要设置请求头域,所以不能通过浏览器直接访问该对象。如果您是在编写代码来访问加密类型的对象,只需要为请求设置相应的头域信息即可
基于表单上传(Node.js SDK) 开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。 功能说明 基于表单上传是使用HTML表单形式上传对象到指定桶中,对象最大不能超过5GB。 您可以通过ObsClient.createPostSignatureSync
下载对象-获取下载进度(Python SDK) 支持获取下载进度的接口包括:二进制式下载,流式下载、文件下载和断点续传下载。 本示例用于获取下载对象的进度。 示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
SDK公共结果对象 调用ObsClient的相关接口完成后,如异常信息参数为空,则均会返回公共结果对象。该对象包含的内容见下表: 字段名 类型 说明 CommonMsg Object 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等。 - Status Number
获取桶存量信息 桶存量信息包括桶已使用的空间大小以及桶包含的对象个数。您可以通过getBucketStorageInfo获取桶的存量信息。以下代码展示如何获取桶存量信息: static OBSClient *client; NSString *endPoint = @"your-endpoint
获取多版本对象 您可以通过OBSAbstractGetObjectRequest的子类,通过设置request.versionID来获取多版本对象,示例代码如下: static OBSClient *client; NSString *endPoint = @"your-endpoint
SDK公共结果对象(Node.js SDK) 调用ObsClient的相关接口完成后,如果未发生异常,则均会返回公共结果对象。该对象包含的内容见下表: 参数名称 参数类型 描述 CommonMsg Object 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等。 -
上传对象-获取上传进度(Python SDK) 支持获取上传进度的接口包括:流式上传、文件上传、上传段、追加上传和断点续传上传。 本示例用于通过设置回调函数来获取上传对象的进度。 示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
SDK自定义异常 通过响应中的error来判断请求是否异常,如果error等于空则请求无异常,否则请求失败,错误信息将会在窗口中打印,代码如下所示: static OBSClient *client; NSString *endPoint = @"your-endpoint"; /
高频问题汇总 开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。 SignatureDoesNotMatch签名不匹配 Status-->403 Code-->SignatureDoesNotMatch
是否支持同步删除文件 不支持。 当前obsutil工具支持同步上传本地目录到OBS桶中,同步成功后,如果用户删除了本地目录下的部分文件,再次进行增量同步上传时,工具将只会检查本地存在的文件是否需要增量进行上传,无法感知已删除文件是否需要在目标桶内进行删除。 需要注意的是,如果在上传过程中
加密示例(Java SDK) 开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。 代码示例:上传对象加密(SSE-C方式) 以下代码展示了在上传对象时使用SSE-C方式进行服务端加密。 设置SSE-C方式下使用的密钥,请参考如何生成
为什么配置了跨域访问OBS(CORS)仍然报错? 首先请检查CORS规则是否配置正确,请参考配置桶允许跨域请求。 对于同一URL会缓存响应header,第一次简单请求不会带跨域头,就会缓存第一次的结果。第二次复杂请求再次访问此URL会取第一次响应结果,产生CORS。属于浏览器机制问题