杭州政务云应用开发规范(可编辑).doc

上传人:laozhun 文档编号:2398112 上传时间:2023-02-17 格式:DOC 页数:29 大小:53KB
返回 下载 相关 举报
杭州政务云应用开发规范(可编辑).doc_第1页
第1页 / 共29页
杭州政务云应用开发规范(可编辑).doc_第2页
第2页 / 共29页
杭州政务云应用开发规范(可编辑).doc_第3页
第3页 / 共29页
杭州政务云应用开发规范(可编辑).doc_第4页
第4页 / 共29页
杭州政务云应用开发规范(可编辑).doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《杭州政务云应用开发规范(可编辑).doc》由会员分享,可在线阅读,更多相关《杭州政务云应用开发规范(可编辑).doc(29页珍藏版)》请在三一办公上搜索。

1、杭州政务云应用开发规范 杭州政务云应用开发规范 (试行) 一、背景 根据 2013 年 1 月 31 日 杭州市副市长徐文光在杭州政务云建设专题会议上的指示精神,决定开展 2013 年杭州政务云应用项目部署对接工作。该项目由杭州市信息化工作领导小组牵头,采用基于杭州政务云平台部署开发/ 自行部署开发模式开展建设。 二、应用范围 杭州市政务云主要为杭州市直相关机关单位的信息化建设提供相应的云服务资源。 三、定义 序号 缩写 描述 云计算 是基于互 联网的 相关服 务的 增加 、 使用 和交付 模式, 通 常涉及通1 过互联网 来提供 动态 易 扩展 且经常是 虚拟化 的资源 2 RDS 远程数据

2、 服务 DOS Denial of Service 的简 称 ( 拒绝服务 ) 3 4 DDOS Distributed Denial of service 的简称 分布 式拒绝 服务 5 PHP 超文本预 处理语 言 Hypertext Preprocessor 的缩 写。是 一种 6HTML 在服务器端 执行的 嵌 入 HTML 文档的脚 本语言 6 REST REpresentational State Transfer 的简称 描述了一 个架构 样式的 网络 系统 四、政务云应用架构 政务云平台为政务云应用提供统一的云计算资源, 政务云应用的开发须遵循统一的顶层架构框架, 以便更好地发

3、挥云计算 平台的低成本、 高效率优势, 并为后期的政务数据的互联互通、大数据挖掘等增值服务奠定基础。 云服务器 云服务器提供政务云应用的运行环境,云服务器的配置包括 VCPU 核数、VMEM 数量、VDSK 容量。 负载均衡 负载均衡是政务云平台提供的负载均衡服务,可实现 4 层、7 层负载均衡,用于解决政务云应用的高可用性需求和高访问量响应需求。 。 操作系统 操作系统运行在云服务器之上, 政务云应用运行在操作系统之上, 政务云平台支持的操作系统包括 CentOS, RedHat Enterprise Linux Server, Ubuntu, Windows 2003, Windows 2

4、008, 支持 32 位、64 位指令集。 关系型数据库 政务云平台提供关系型数据库服务, 政务云应用开发方可从政务云平台申请数据库实例, 然后使用所提供的数据库连接地址和端口号连接数据库, 在应用中的使用方式与原先自行安装数据的操作方式、 编程接口保持一致。 政务云平台支持 MySQL 、SQLServer 数据库引擎。考虑到政务云平台成本、效率、数据结构一 致 性 指 导 性 原 则 , 政 务 云 应 用 的 开 发 所 用 数 据 库 首 选 RDS-MySQL 及RDS-SQLServer, 对 于 目 前 尚 不 支 持 的 Oracle 数 据 库 引 擎 , 如 果 已 有 的

5、 基 于Oracle 的政务应用无法 迁移到 MySQL, 可以 将数据库部署在政务云平台中的物理服务器上。 开放存储 政 务 云 开 放 存 储 服 务 提 供 海 量 文 件 存 储 , 政 务 应 用 使 用 开 放 存 储 服 务 API来存取文件。 安全防护 政务云平台提供云盾服务,政务云应用可根据应用需要进行配置,支持对DOS/DDOS 攻击的防御,可清洗或拦截 SYN-Flood 、UDP Flood 、Ping-of-Death和 CC 等各类拒绝服务 攻击。 网络 政务云 严格按照政务外网相关规范的要求划分相关的网络区域, 基于电子政务外网的应用开发 、部署也应完全符合电子政

6、务外网的相关规范 。 五、 应用 开发 基础 环境 规范 ( 一 ) 操 作 系 统选 择 政务云平台支持多种主流操作系统, 政务云应用开发需要基于其中一种操作系统开发。目前能够支持的操作系统包括: 操作系 统 版本 位数 CentOS 5.4 32 位 CentOS 5.7 64 位 CentOS 5.8 64 位 CentOS 6.3 64 位 CentOS 6.2 64 位安 全加 固版 Debian 6.0 64 位 Ubuntu 10.10 64 位 Ubuntu 12.04 64 位 Red Hat Enterprise Linux Server 5.4 64 位 Red Hat

7、Enterprise Linux Server 5.4 64 位安 全加 固版 Red Hat Enterprise Linux Server 5.7 64 位 Windows Server 2003 标 准中 文版 SP2 32 位 Windows Server 2003 标 准中 文版 SP2 32 位安 全加 固版 Windows Server 2003 标 准英 文版 SP2 64 位 Windows Server 2008 标 准中 文版 SP2 32 位 Windows Server 2008 R2 标准 中文 版 SP1 64 位 注: 政务 云云 计算 平台 所支 持的操 作系

8、 统可 能会 不定 期更新 , 已官 网公 布操 作系 统列表 为 准 。政务云应用须基于以上操作系统进行开发。 各个政务应用可以根据原有基础以及升级优化需求,来选择所需的操作系统。 操作系统的选择, Linux 推荐使用 CentOS 或 Red Hat Enterprise Linux Server; Windows 推荐使用 Windows 2008 版本。 CentOS 由开源社区开发,跟随 Red Hat Enterprise Linux Server 的功 能升级,与 Red Hat Enterprise Linux Server 相比, 系统稳定性相当、 甚至更好, 而且不会受到

9、公司政策限制。 Ubuntu 由开源社区开发,但稳定性不如 CentOS考虑到应用迁移的复杂度, 对于已有政务应用系统迁云时, 应首先考虑其原有政务应用所依赖的操作系统,如,原应用是运行在 Windows Server 上,则应首选 Windows Server 操作系统。 ( 二 ) 编 程 语 言选 择 政务云平台对编程语言不做限制, 只要是所选操作系统支持, 政务云应 用开发者可根据需要选择适用的编程语言。 对于小型 B/S 应用,推荐使用 PHP 编程语言。 对于中大型应用,尤其是后台应用开发,推荐使用 Java 编程语言 前端应用编程语言可根据不同的前端载体选择编程语言。 编程语言开

10、发、 运行环境需要政务云应用开发商自行在云服务器上安装配置。 ( 三 ) 中 间 件 选择 中间件产品由政务云应用开发者根据开发自行选择, 中间件产品向下对操作系统有要求,向上对编程语言有要求,在选型时需要统一考虑。 政务云应用所需中间件需要政务云应用开发商根据需要自行在云服务器上安装配置。 (四)Web 服 务器 选 择 政务云平台支持各主流 Web 服务器软件,推荐的 Web 服务器包括: 操作系 统 Web 服 务器 特点 Windows IIS 微软出 品, 与 Windows Server 操作 系统 及微 软开发软件 结合 度好 。Windows Server 上首 选 Apach

11、e HTTP Server Linux 各发 行版 历 史 久 , 应 用 广 , 全 球 50% 的 互 联 网 网 站 使 用Apache 服务 器, 在全 球 Top 500 的网 站中 ,绝 大部分使 用 Apache 服务 器。 性能稳 定、 安全 可靠 、功能丰 富、 但性 能不 算优 秀 NGINX Linux 各发 行版 高 性能、低 资源消 耗,单台 服务器具 备支撑 35万 并发请求 能力。 结构简单 、配置容 易,但 文档相对匮 乏 Linux 各发 行版 TEngine TEngine 由 淘宝 开发 并开 源 , 基于 NGINX 做 了大 量优化, 在阿 里集 团内

12、 部获 得大量 应用 Web 服务器软件需要政务云应用开发商根据需要自行在云服务器上安装配置。 ( 五 ) 自 定 义 镜像 政务云应 用开发 商在云 服务器上 安装配 置好应 用环境以 后,可 以生成 镜像,新镜像用于生成与镜像中的软件配置相同的云服务器。 六 、基于政务云开发规范 ( 一 ) 应 用 开 发原 则 基于政务云开发的应用系统应遵循下列的 原则: 系统开发 应从 业务需 求 的角度出 发, 不得盲 目 追求系统 的先 进性而 忽 略了系统的实用性。 系统的开发是为了更好地满足业务上的需要, 而不是技术上的需要。 开发的方 法和 管理必 须 规范化、 合理 化、制 度 化,从而

13、确保 开发的 质 量和进度。 应保证开 发的 进度并 按 时完成。 确保 开发工 作 及时、有 效且 高质量 的 完成。 系统开发必须具有一定的前瞻性,符合主流系统的发展方向。 提高和加 强开 发人员 的 安全意识 。确 保机密 信 息和关键 技术 不会泄 漏 ,特别是不可泄漏到竞争对手的手中,否则将会对公司的竞 争 力 产 生 极 大 的 影 响 。 应充分利用政务云现有的 API 等资源 ,确保开 发出的应用系统可以在政务云平台上稳定运行。 ( 二 ) 安 全 开 发规 范 1、 系统开发人员安全管理 为了保证应用系统的安全, 首先应用系统开发人员必须负责其开发内容的保密性, 不得私自将开

14、发的相关信息泄漏出去, 即使对家人或开发团队中的其他开发人员也不得泄漏。 但开发人员有责任将开发的相关信息告诉项目的负责人员或开发小组的负责人员。 其次, 在系统开发的过程中, 应明确不同人员的身份和职责, 即项目负责人员、 系统开发人员、 系统审核人员, 并应根据员工权限和责任的大小确认是否需要签署相关的保密协议。 最后, 系统开发人员在整个开发的 过程中必须完整持续地进行代码错误处理所规定的流程, 应对重要的敏感信息进行加密保护, 并使用一些相对复杂的加密和密钥生成机制, 单独编写安全性设计说明概要。 2、 系统设计阶段 应用系统设计阶段应确保敏感系统的安全性, 确保访问层的安全性, 确保

15、日志管理机制健全。 3、 系统开发阶段 应用系统开发阶段应针对原程序库和运作程序库进行严格管理; 并通过系统安全开发工具, 对系统的各个版本进行安全审核, 已满足防御后门代码或隐藏通道等安全问题的需要;对系统进行严格的版本控制。 4、 系统测试阶段 在应用系统测试阶段注重系统安全测试, 及早发现相关的后门和漏洞, 以便把问题解决在上线前。 (三) 弹性计算开发 规范 政务云平台提供 API 用 于云服务器的管理操作。 政务云平台弹性计算 API 详情请参考附件 ECS-API-Reference-Full.pdf。 ( 四 )云存储 开发 规范 政务云平台提供海量、 安全、 高可靠的云存储服务

16、, 开发者可以使用简单的REST 接口对数据进行管理,提供 Java, Python, PHP, .NETC# SDK 开发包。 相 关语 句及编 程实 例 1、Object 在 OSS 中,用户的每 个文件都是一个 Object ,每个文件需小于 5G 。Object包含 key 、data 和 user meta 。key 是 Object 名,user meta 是对数据的 描述 Object 命名规范: 使用 UTF-8 编码 规则长度必须在 1-1023 字节之间 。Object Group Object Group 是由一个 或多个 Object 组成的松 散的集合。 用户可以像操

17、作普通 Object 一样去操作 Object Group , 这些操作 包括 get , range query , delete , list 。但 Object Group 的数据 和所包含 Object 的数据 不是紧密联系的。Bucket 存储在 OSS 上的每个 Object 必须都包含在 Bucket 中, Bucket 名在整 个 OSS中具有全局唯一性, 且不能修改。 一个应用, 例如图片分享网站, 可以对应一个或多个 Bucket 。 一个用 户最多可创建 10 个 Bucket , 但每个 Bucket 中存 放的 Object的数量和大小总和没有限制,用户不需要考虑数据

18、的可扩展性。Bucket 命名规范 : 只能包括小写字母,数字,下划线(_)和短横线(- ) 必须以小写字母或者数字开头 长度必须在 3-255 字节之间Service Service 对于某用户来 说就是 OSS 提供给该 用户的虚拟存储空间。用户可以在这个存储空间中拥有一个或者多个 Bucket 。Access ID & Access Key (API 密钥) 用户注册 OSS 时, 系统 会给用户分配一对 Access ID 和 Access Key , 称为 ID对,用于标识用户,为访问 OSS 做签名验证。 当您通过 /0. 成功创建的 OSS 存储服务后, 可以进入 “管理中心”

19、- “获取 API 密钥 ”得 到 Access ID & Access Key 。 2、 关于 Service 操作 Get ServiceListBucket : 对于服务地址作 Get 请求可以返回请求者拥有的所有 Bucket ,其中 “ /” 表 示根目录。 请求示例: . . .GET / HTTP/1.1 Host: /. Date: Wed, 01 Mar 2011 12:00:00 GMT Authorization: OSS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE 返回示例: . . .?xml version1.0

20、 encodingUTF-8/? ListAllMyBucketsResult xmlns/.bcaf1ffd86f461ca5fb16fd081034fwebfile quotes2011-02-03T16:45:09.000Zsamples 2011-02-03T16:41:58.000Z如果请求中没有用户验证信息(即匿名访问) ,返回 403 Forbidden 。 返回示例: . . .?xml version1.0 ? AccessDenied Anonymous access is forbidden for this operation CBF1A411D747A648 /.如果

21、用户验证失败,参见访问控制中验证失败的消息。 . . .3、Object 操作Object 的操作有: Put Object 、 Get Object 、 Head Object 、 Delete ObjectObject Group 的操作有: Post Object Group 、 Get Object Group Get Object Group Index 、 Head Object Group 、 Delete Object Group(1 ) PutObject Put Object 用于上传文件。 请 求示例: . .PUT /bucket/my-image.jpg HTTP/1

22、.1 Host: /. Date: Wed, 28 May 2011 22:32:00 GMT Content-Type: text/plain Content-Length: 118987 返 回示例: . .HTTP/1.1 200 OK x-oss-request-id: 236A8905248E5A01 ETag: ”7 A C 6 6 C 0 F 1 4 8 D E 9 5 1 9 B 8 B D 2 6 4 3 1 2 C 4 D 6 4 ” Date: Wed, 01 Mar 2011 12:00:00 GMT Content-Length: 0如果 Head 中没有加入 Con

23、tent length 参数, 会返回 411 Length Required 错误。 返 回示例: . .?xml version1.0 ?MissingContentLength You must provide the Content-Length HTTP header CA934D9BF41CD570 /.如果设定了长度, 但是没有发送消息 Body , 或者发送的 body 大小 小于给定大小, 服务器会一直等待, 直到 time out , 返 回 400 Bad Request 消息。 此时 OSS上的这个文件内容是用户已经上传完的数据。 返 回示例: . .?xml vers

24、ion1.0 ?RequestTimeout Your socket connection to the server was not read from or written to within the timeout period. Idle connections will be closed 35CF54E57E8DFB5B /.注意:如果设定的长度小于 body 中设定数据大小,将成功创建文件,且 Object 大小等于实 际传入文件的大小。如果试图添加的 Object 所在的 Bucket 不存在,返回 404 Not Found 错误。 错 误示例: . .?xml versio

25、n1.0 ?NoSuchBucket The specified bucket does not exist ausrealtest3 6D6AD23F4FBFCFE1 /.如果试图添加的 Object 所在的 Bucket 没有访问权限, 返回 403 Forbidden 错误。 错 误示例: . .?xml version1.0 ?AccessDenied Access Denied4AE271F98B765F92 /.注意:如果试图添加的 Object 的同名文件已经存在,并且有访问 权 限 。 新 添 加 的 文 件 将 覆 盖 原 来 的 文 件 ,成功返回 200 OK 。如果添加

26、文件长度超过 5G ,返回错误消息 400 Bad Request 。返 回示例: . .?xml version1.0 ?InvalidArgument The Object size must be less than 5G00000 content-Length 10D45C6787F347AF /.如果在 PutObject 的时候, 携带以 x-oss-meta- 为前缀的参数, 则视为 user meta ,比如 x-oss-meta-location 。 一个 Object 可以有多 个类似的参数, 但所有的 user meta总大小不能超过 2k。 如果传入的 Object k

27、ey 长度大于 1023,返回 400 Bad Request 。返 回示例: . .?xml version1.0 ?InvalidObjectName The Length of Object name must be less than 256 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

28、aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 10D45C6787F347AF /.(2 ) GetObject 用于获取某个 Object , 此操作要求用户对该 Object 有读权限。 请 求示例: . .GET /bucket/my-image.jpg HTTP/1.1 Host: /.: Date: Wed, 28 May 2011 22:32:00 GMT返 回示例: . .HTTP/1.1 200 OK x-oss-request-id: 318BC8BC1488

29、32E5 Date: Wed, 28 May 2011 22:32:00 GMT Last-Modified: Wed, 12 May 2011 17:50:00 GMT ETag: fba9dede5f27731c9771645a39863328 Content-Length: 434234 Content-Type: text/plain Connection: close Server: AliyunOSS 434234 bytes of object data如果文件不存在返回 404 Not Found 错误。错 误示例: . .?xml version1.0 ?NoSuchKey

30、The specified key does not exist text11.txt 869CFFAF26C5B5C9 /.GetObject 时可以设定 文件传送范围,在头中以 Range 设定。 例如,设定 bytes0-9 ,表示传送第 0 到第 9 这 10 个字符。 消 息示例: . .GET / example-bucket/example-object HTTP/1.1 Host: /. x-oss-date: Fri, 28 Jan 2011 21:32:02 GMT Range: bytes0-9返 回示例: . .HTTP/1.1 206 Partial Content

31、x-oss-request-id: 47622117804B3E11 Date: Fri, 28 Jan 2011 21:32:09 GMT x-oss-meta-title: the title Last-Modified: Fri, 28 Jan 2011 20:10:32 GMT ETag: b2419b1e3fd45d596ee22bdf62aaaa2f Accept-Ranges: bytes Content-Range: bytes 0-9/443 Content-Type: text/plain Content-Length: 10 Server: AliyunOSS 10 by

32、tes of object data 注意: 在返回消息中会包含整个文件的长度和此次返回的范围, 例如:Content-Range: bytes 0-9/44,表示整个文件长度为 44 ,此次返 回的范围为 0-9 。如果不符合 范围规范,则传送整个文件,并且不在结果中提及 Content-Range 。 如果设定 If-Modified-Since ,并传入上次修改 时间,如果参数中的时间早于实际修改时间,正常传送文件,并返回 200 OK 。如果参数中的时间和实际修改时间一样或者更晚,会返回 304 not modified 。消 息示例: . .GET /bucket/my-image.

33、jpg HTTP/1.1 Host: /. Date: Wed, 28 May 2011 22:32:00 GMT If-Modified-Since: Wed, 06 Apr 2011 10:02:46 GMT时 间格式如 下: . . .Wed, 28 May 2011 22:32:00 GMTPython 代 码实现示 例: . . . . . . . . .from time import gmtime, strftime now strftime%a, %d %b %Y %H:%M:%S GMT, gmtime304 返 回示例: . . . .x-oss-request-id: 9

34、EF965F681DD19B1 Date: Wed, 06 Apr 2011 10:08:22 GMT Last-Modified: Sat, 02 Apr 2011 06:30:20 GMT ETag: 4124bc0a9335c27f086f24ba207a4912 Server: AliyunOSS1. 如果设定的时间不符合规范,直接返回文件,并返回 200 OK 。 2. 如果设定 If-Unmodified-Since , 如果传入参 数中的时间等于或者晚于文件实际修改时间,传送文件并返回 200 OK ,如 果早于实际修改时间,会返回 412 precondition failed

35、 错误 。错 误示例: . .?xml version1.0 ?PreconditionFailed At least one of the pre-conditions you specified did not hold If-Unmodified-Since E821E4E57A3E3D9D /.如果设定 If-Match , 并 传入期望的 ETag , 若 和 object 的 ETag 匹配 , 正常的发送文件。如果不符合,返回 412 precondition failed 错误。消 息示例: . .GET /bucket/my-image.jpg HTTP/1.1 Host:

36、/. Date: Wed, 28 May 2011 22:32:00 GMT If-Match: 4124bc0a9335c27f086f24ba207a4912错 误示例: . .?xml version1.0 ? PreconditionFailed At least one of the pre-conditions you specified did not hold If-Match 72E308EB96797B2C /.如果设定 If-None-Match 来检查文件是否有更新, 需要传入 ETag , 如 果传入值和 Object 的相同,返 回 304 Not Modified

37、 。示 例消息: . .304 Not Modified x-oss-request-id: 34A1ABA895E26B6E Date: Wed, 06 Apr 2011 09:59:36 GMT Last-Modified: Sat, 02 Apr 2011 06:30:20 GMT ETag: 4124bc0a9335c27f086f24ba207a4912 Server: AliyunOSS如果和设定 ETag 不一 样,正常传送。 GetObject 操 作 支 持 包 含 If-Modified-Since ,If-Unmodified-Since ,If-Match和 If-No

38、ne-Match 中多 个条件查询, 其中 If-Modified-Since 和 If-Unmodified-Since可以同时存在,If-Match 和 If-None-Match 也 可以同时存在。在多条件查询时,遵循以下规则 : 1. 如果包含 If-Unmodified-Since 并且不符合或 者包含 If-Match 并且不 符合,返回 412 precondition failed 。 2. 如果包含 If-Modified-Since 并且不符合或者包含 If-None-Match 并 且不符合,返回 304 Not Modified 。 3. 返回 200 OK ,并传 输

39、文件 。(3 ) HeadObject Head Object 只返回某 个 Object 的 meta 信息 ,不返回文件内容。 注意: 不论正常返回 200 OK 还是非正常返回, Head Object 都不返回消息体。请 求示例: . .HEAD/bucket/my-image.jpg HTTP/1.1 Host: /. Date: Wed, 28 May 2011 22:32:00 GMT返 回示例: . .HTTP/1.1 200 OK x-oss-request-id: 318BC8BC143432E5 x-oss-version-id: 3HL4kqtJlcpXroDTDmjV

40、BH40Nrjfkd Date: Wed, 28 May 2011 22:32:00 GMT Last-Modified: Sun, 1 Jan 2011 12:00:00 GMT ETag: fba9dede5f27731c9771645a39863328 Content-Length: 434234 Content-Type: text/plain Connection: close Server: AliyunOSS如果文件不存在返回 404 Not Found 错误返 回示例: . .x-oss-request-id: 99C9F748F4CB2011 Content-Type: ap

41、plication/xml Transfer-Encoding: chunked Date: Mon, 11 Apr 2011 07:48:06 GMT Server: AliyunOSS HeadObject 支持在头中 设定 If-Modified-Since, If-Unmodified-Since, If-Match ,If-None-Match , 具体规 则请参见 GetObject 中 对应的选项。 如果没有修改, 返回304 Not Modified 。x-oss-request-id: F8FC82E62C0DF1C1 Date: Tue, 03 May 2011 06:56

42、:20 GMT Last-Modified: Sat, 02 Apr 2011 06:30:20 GMT ETag: 4124bc0a9335c27f086f24ba207a4912 Connection: close Server: AliyunOSSHeadObject 支持在头中 设定 If-Modified-Since, If-Unmodified-Since, If-Match ,If-None-Match , 具体规 则请参见 GetObject 中 对应的选项。 如果没有修改, 返回304 Not Modified 。 x-oss-request-id: F8FC82E62C0D

43、F1C1 Date: Tue, 03 May 2011 06:56:20 GMT Last-Modified: Sat, 02 Apr 2011 06:30:20 GMT ETag: 4124bc0a9335c27f086f24ba207a4912 Connection: close Server: AliyunOSS HeadObject 和 GetObject 操 作 类 似 , 支 持 包 含 If-Modified-Since ,If-Unmodified-Since , If-Match 和 If-None-Match 中 多 个 条 件 查 询 , 其 中If-Modified-S

44、ince 和 If-Unmodified-Since 可以 同时存在, If-Match 和 If-None-Match也可以同时存在。在多条件查询时,遵循以下规则 。 如果包含 If-Unmodified-Since 并且不符合或者 包含 If-Match 并且不符 合, 返回 412 precondition failed 。 如果包含 If-Modified-Since 并且不符合或者包含 If-None-Match 并且不符合,返回 200 OK ,并传输 文件,返回 304 Not Modified 。 如果用户在 PutObject 的时候传入以 x-oss-meta- 为开头的

45、user meta ,比如x-oss-meta-location ,返回消息时,返回这些 user meta 。 (4 ) DeleteObject DeleteObject 用于删除 某个 Object 。 示 例消息: . .DELETE / bucket/my-second-image.jpg HTTP/1.1 Host: /. Date: Wed, 12 May 2011 17:50:00 GMT Authorization: OSS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE Content-Type: text/plain返 回

46、示例: . .HTTP/1.1 204 NoContent x-oss-request-id: 0A49CE4060975EAC Date: Wed, 12 May 2011 17:50:00 GMT Content-Length: 0 Connection: close Server: AliyunOSS 注意:如果文件不存在,也返回 204 No Content如果 Bucket 不存在,返回 404 Not Found 。 ?xml version1.0 ?NoSuchBucket The specified bucket does not exist usrealtest11 5FEA9BB37826E99C /.4、 关于 Object Group 的 操作 Object Group 是由一个 或多个 Object 组成的松 散的集合, 它的数据长度是其所属 Object 的数据长度的总和。用户可以指定在同一个 Bucket 下的 一个或多个Object , 将其在

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号