读书频道 > web开发 > 其他综合 >
1.1.5 媒体类型
2015-01-09 15:48:24     我来说两句 
收藏    我要投稿   
每个表示都有特定的格式,即媒体类型media type)。媒体类型是在因特网上客户端和服务器之间传递信息的格式。 媒体类型由两部分标识组成,例如 text/html。媒体类型有多种用途。有些媒体类型非常通用,例如, application/json(表示一组值或一组键值)text/html(主要用于在浏览器中显示文档)。另一些媒体类型的语法限制较多,例如,application/atom+xml application/collection+json,专门用于管理源和列表。还有用PNG 图 像的 image/png 媒体类型。媒体类型也可以是专属于特定领域的,例如 text/vcard 用于名片和联络信息的电子化共享。附录 A 列出了一些常见的媒体类型。

媒体类型自身实际上包含两部分。 第一部分(斜线前)是顶级媒体类型,这部分描述了通用的类型信息以及常用处理规则。 常见的顶级类型有: applicationimagetextvideomultipart。第二部分是子类型subtype),描述一个非常具体的数据格式。以 image/png image/gif 为例,它们的顶级类型告诉客户端这是一个图像(image),而子类型 pnggif 具体说明了这是什么类型的图像,应该如何处理。子类型经常有不同的变种,使用一样的语法,但格式不同。例如, HALHypertext Application Language,超文本应用程序语言, http://stateless.co/hal_specification.html)有两个变种: JSONapplication/hal+jsonXMLapplication/hal+xml)。子类型 hal+json 说明该 HAL 使用 JSON 传输格式,而hal+xml 说明使用的是 XML 传输格式。



媒体类型注册

通常媒体类型是注册在一个由 IANAInternet Assigned Numbers Authority,因特网号码分配局)管理的中央注册库( http://www.iana.org/assignments/media-types/media-types.xhtml中。 这个注册库本身包含一份媒体类型列表, 以及到相关说明书的链接。注册表按照顶级媒体类型进行分类,每个顶级分类包含一份具体媒体类型的列表。


应用程序开发者要设计能够识别标准媒体类型的客户端或服务器, 就可以参考这个媒体类型注册库。例如,如果你要创建一个识别 image/png 媒体类型的客户端,可以导航到IANA 媒 体 类 型 页 面( http://www.iana.org/assignments/media-types/media-types.xhtml) 的image 分类,查找“png”,得到 image/png 类型的说明,具体页面如图 1-3 所示。


为什么要有这些不同的媒体类型呢?因为每个类型都有各自的优点,或者有其量身定做的客户端。 HTML 类型展示文档(例如: Web 页面)效果极佳,但不一定最适合于传输数据。 JSON 传输数据很好用, 但是在重现图像上效率却十分低下。 PNG 是极好的图像格式,但在存储可扩展的矢量图形方面不大理想, 对此 SVG 才是优选。比起不成熟的 XML JSONATOMHAL Collection+JSON 能表达更为丰富的应用程序语义,不过,它们受到的限制也较多。

读到这里,你已经了解了 Web 体系结构的核心组件。下一节我们将详细了解 HTTP—将所有这些组合起来的黏合剂。


点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.1.4 表示
下一篇:1.2 HTTP协议
相关文章
图文推荐
3.2 Windows 7设置
3.1 DNS解析
2.3 HTTP协议
2.2 TCP/IP协议与So
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站