概述

Web有三个核心概念:资源(Resource)、URI(UniformResource Identifer,统一资源标识符)、表示(Representation).一个资源由一个URI进行标识。表示是从资源返回的数据,其格式被称为媒体类型。

资源

任何带有URI标识的东西都是资源。

资源并不只限于文件,还包括服务,系统,流媒体等。

URI

每个资源都可以通过唯一的URI访问,可以把URI看作一个资源的主键。

一个URI只能对应一个资源,但多个URI可以指向同一个资源。

URI 的格式为:scheme:hierarchicalpart[?query][#fragment],其中scheme表示通信协 议,hierarchical part 表示通信地址、安全证书颁发机构(authority)和分层路径(hierarchical path)等,查询字符串query和fragment是可选的。

URI分为两种类型:URL(UniversalResource Locator,统一资源定位符)和URN(Universal Resource Name,统一资源名)。URL既标识一个资源,又指定了访问该资源的方法。URN是一个资源的唯一标识符。在实际应用中,大多数URI都是URL,因此 URI和URL常常同义替换使用。

表示

表示是资源在某个时刻状态的快照。

当HTTP客户端请求一个资源时,返回的是这个资源的表示,而不是资源本身。

从一个请求到下一个请求发生时,资源的状态可能会发生很大的变化,因而返回的表示也会大不相同。

一个资源可以有一个或多个表示。

媒体类型

每个表示都有特定的表示,即媒体类型。

媒体类型是在Internet上客户端和服务器之间传递信息的格式。

媒体类型由两部分标识组成。第一部分是顶级媒体类型,描述了通用的类型信息以及常用处理规则。常见的顶级类型有:application、image、text、video和multipart。第二部分是子类型,描述一个非常具体的数据格式,如json、html等。

常用媒体类型列表

媒体类型

描述

Text/html

HTML文档

Application/xhtml+xml

使用格式良好的XML的HTML文档

Application/xml

XML文档和模式

Application/json

JSON文档

Application/x-www-form-urlencoded

表单键/值数据

Multipart/mixed

多个数据集合而成的单个正文

Multipart/form-data

文件

Image/jpeg

JPEG文档

Image/gif

GIF文档

Image/png

PNG文档

Image/svg+xml

SVG文档

Application/atom+xml

Atom源

Application/vnd.hal+json

包含相关资源链接的数据

Application/vnd.collection+json

数据集合

更多

各种媒体类型的特点:

HTML 类型展示Web页面效果极佳,但不适合传输数据;JSON传输数据很好用,但在重现图像上效率却十分低下;PNG是极好的图像格式,但不适合存储可扩展的 矢量图形,对此SVG才是优选。ATOM,HAL和Collection+JSON能表达更为丰富的应用程序主义,不过受到的限制也较多。

Web体系=资源+URI+表示的更多相关文章

  1. AngularJS使用OData请求ASP.NET Web API资源的思路

    本篇整理AngularJS使用OData请求ASP.NET Web API资源的思路. 首先给ASP.NET Web API插上OData的翅膀,通过NuGet安装OData. 然后,给control ...

  2. web开发资源导航

    实用工具 前端在线工具 兼容性速查 html5兼容性查询 node-es6支持度 es6兼容性表查询 设备es6支持度 游览器H5支持度 浏览器内核检测工具 手机设备信息检测 浏览器市场份额 文档手册 ...

  3. WEB前端资源项目整合

    WEB前端资源项目整合 vue.js高仿饿了么(1-13章全)链接:https://pan.baidu.com/s/1qYSiYXluA1AlEV0EskxWZw提取码:25z9 Vue.js 2.5 ...

  4. 个人Web工具箱&资源整理(1)

    很久就想把使用的工具及收藏的资源整理一番:一是为了传达博客社区的理念:资源共享,而是方便自己及团队快速获取. 学习资源: 首推两个入门级在线参考网站. 1 w3c school. 2 Runoob.c ...

  5. 移动web开发资源大整合

    移动web开发资源大整合 http://www.cnblogs.com/PeunZhang/p/3407453.html

  6. 极客Web开发资源大荟萃

    前端开发已经成为当前炙手可热的技术之一.此次我们总结的前端开发包含了相关技术和流行趋势,希望从中大家可以挖掘你们所需要的,并带给你们最有价值的帮助!原文来自:极客标签 使用代码回放来愉快地学习前端知识 ...

  7. 汇总——WEB前端资源网

    前端攻城师 爱思资源网 HTML5吧 0101后花园 前端网 编程教程和源代码示例 Javascript中文网 Web前端资源网 移动端HTML5资源整理 Web开发者 SegmentFault 前端 ...

  8. Java Web 前端资源文件的路径问题

    WEB-INF是Java Web应用的安全目录,在部署时用于存放class文件.项目用到的库(jar包).Java Web应用的配置文件web.xml. 浏览器不能访问此目录下的资源,比如在WEB-I ...

  9. 写给自己的web开发资源

    web开发给我的感觉就是乱七八糟,而且要学习感觉总是会有东西要学习,很乱很杂我也没空搞,(其实学习这个的方法就是去用它,什么你直接用?学过js么学过jquery么?哈哈,我没有系统的看完过,但是也做出 ...

随机推荐

  1. Echarts柱形图颜色设置

    ECharts图为每个数据项配置颜色 (2014-11-12 15:52:53) 转载▼ 标签: 时尚 分类: 开发学习 其实给每个数据项配置很简单 只需要在series里面给data数组的每个元素设 ...

  2. shell脚本中获取本机ip地址的方法

    ipaddr='172.0.0.1' ipaddr=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/ ...

  3. task-clph

    @UI方面 1 UILabel如果没有text内容,那么无论你怎么设置背景色都没用 UIButton就都可以用 2使用了新控件:UIStackView 使用步骤: //1创建 _horizontalS ...

  4. 如何使用 declare-styleable

    如何使用 declare-styleable 在创建 xml 到 objectName/res/values/ 命名为 attrs.xml 编辑文件内容为(示例)<?xml version=&q ...

  5. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  6. Gradle 教程:第一部分,安装【翻译】

    原文地址:http://rominirani.com/2014/07/28/gradle-tutorial-part-1-installation-setup/ 在这篇教程里,我们将主要讲解如何在我们 ...

  7. robotframework笔记4

    机器人框架概述   机器人框架是一个通用的开源的自动化测试框架 验收测试和验收测试驱动开发(ATDD).它具有易于使用的表格的测试数据 语法采用关键字驱动 测试方法.其检测能力可以通过测试库 用Pyt ...

  8. 2014---多校训练一(A Couple doubi)

    Couple doubi Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...

  9. ARM流水线关键技术分析与代码优化

    引 言    流水线技术通 过多个功能部件并行工作来缩短程序执行时间,提高处理器核的效率和吞吐率,从而成为微处理器设计中最为重要的技术之一.ARM7处理器核使用了典型三级流 水线的冯·诺伊曼结构,AR ...

  10. oracle序列为什么不是从1开始

    问题原因: ·当我们使用序列作为插入数据时,如果使用了“延迟段”技术,则跳过序列的第一个值 ·Oracle从 11.2.0.1版本开始,提供了一个“延迟段创建”特性: 即 当我们创建了新的表(tabl ...