天翼云对象存储(经典版)I型API参考-POST Object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
产品推荐: 1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>; 2、高防物理服务器20核/16G/50M/500G防御仅350元,点击抢购>>> 3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>> 4、阿里云服务器2核2G3M仅99元/年、2核4G5M仅199元/年,新老同享,点击抢购>>> 5、腾讯云服务器2核2G4M仅99元/年、新老同享,点击抢购>>> 点击这里注册天翼云特邀VIP帐号,立即体验天翼云对象存储>>> 天翼云对象存储(经典版)I型API参考-POST Object POST操作使用HTML表单将对象上传到指定的Bucket。POST是另一种形式的PUT操作,POST可以让使用者通过Browser-based的方式,将对象上传到指定bucket中。PUT的参数是通过HTTP Header提交的,而POST通过使用multipart/form-data编码的消息体中的字段进行提交。用户必须对操作的Bucket有写权限。OOS不存储部分对象:如果收到成功的响应,那么对象就是存储成功了。 为了保证数据在网络传输过程中没有损坏,可以使用Content-MD5字段进行校验。如果请求参数中有Content-MD5,OOS将会计算用户提交的对象的MD5值。如果计算出的值与用户提供的值不一致,OOS将会返回一个错误给用户。或者,用户可以在上传对象到OOS时计算对象的MD5值,并与OOS在响应中返回的ETag进行比较。ETag是对象内容的MD5值,不包括metadata。 请求语法
表单字段说明:表单中指定的每个表单字段(AWSAccessKeyId、签名、文件、策略和带x-ignore-前缀的字段名称除外)必须包含在policy条件列表中,两者需要保持一致。
响应头响应头(除了通用的响应头以外,本操作可以包括以下响应头。)
响应结果
请求示例
响应示例下面的代码演示了一个简单的响应头。
表单结构表单声明包含三个部分:action、method和enctype。如果这些值当中的任意一个设置不正确,请求将失败。action指定处理请求的URL,必须将它设置为Bucket的URL。例如:Bucket的名称是BucketName,则URL为http://BucketName.oos-cn.ctyunapi.cn/。 method必须是POST。enctype设置为“multipart/form-data”。
Post Policy字段的构造Post Policy是使用UTF-8和Base64编码的JSON文档,它指定了请求必须满足的条件并且用于对内容进行身份验证。根据您设计策略文档的方式,您可以对每次上传、每个用户、所有上传或根据其他能够满足您需要的设计来使用它们。 下面是一个简单的Post Policy示例
策略文档由过期(expiration)和条件(conditions)两部分构成。 过期 过期元素采用ISO 8601UTC日期格式来指定策略的过期日期。例如,“2007-12-01T12:00:00.000Z”指定策略在2007年12月1日午夜UTC之后失效。在策略文档中过期字段是必需的。 条件 策略文档中的条件验证上传的对象的内容。您在表单中指定的每个表单字段(AWSAccessKeyId、签名、文件、策略和带x-ignore-前缀的字段名称除外)必须包含在条件列表中。如果您有多个具有相同名称的字段,使用逗号进行分隔。例如,如果您有两个名为x- amz-meta-tag的字段,第一个字段的值为Ninja,第二个字段的值为Stallman,您可以将策略文档设置为Ninja,Stallman。 针对扩展的字段执行前缀匹配。例如,如果您将对象名称字段设置为user/betty/${filename},您的策略可能是["starts-with", "$key", "user/betty/" ]。请勿输入["starts-with", "$key", "user/betty/${filename}"]。
注意:如果您的工具包添加了其他字段(例如,Flash添加了文件名),您必须将它们添加到策略文档。如果您可以控制此功能,将 x-ignore- 添加为字段的前缀以使OOS忽略此功能并使其不影响此功能的未来版本。 条件匹配 下表介绍条件匹配类型。尽管您必须为您在表单中指定的每个表单字段指定一个条件,您也可以通过为某个表单字段指定多个条件来创建更复杂的匹配条件。
字符串转义
Signature字段的构造步骤
|