每个Web服务器资源都有一个名字,这样客户端就可以说明他们感兴趣的资源是什么了,服务器资

源名被统称为:统一资源标识符(Uniform Resource Identifier, URI)

Joe的五金店的Web服务器上一个图片资源的URI:

http://www.joes-hardware.com/specials/saw-blade.gif

URI有两种形式,分别为URL和URN,URN仍然处于试验阶段,因此现在所说的URI就是指URL

URL精确地说明了某资源的位置以及如何去访问它,获取资源过程如下:

1:使用HTTP协议,2:进入www.joes-hardware.com主机,3:获取名为/specials/saw-

blade.gif的资源

请求方法

  GET :用于请求服务器发送某个资源

  HEAD: 与GET方法类似,但服务器在响应中只返回首部,不会返回实体的主题部分

  PUT:向服务器写入文档

  

PUT方法的语意就是让服务器用请求的主体部分来创建一个由所请求的URL命名的新文档,或者

如果那个URL已经存在的话,就用这个主体来代替它

  POST:POST方法起初是用来向服务器输入数据,实际上通常会用它来支持HTML的表单,

表单中填好的数据通常会被送给服务器,然后由服务器将其发送到它要去的地方(比如送到一个服

务器网关程序中,然后由这个程序对其进行处理)

注意:POST用于向服务器发送数据,PUT用于向服务器上的资源(例如文件)中存储数据

  TRACE:客户端发起一个请求时,这个请求可能要穿过防火墙,代理,网关或其他一些应用

程序,每个节点都可能修改原始的HTTP请求,TRACE方法允许客户端在最终将请求发送给服务

器时,看看它变成了什么样子

TRACE请求会在目的服务器端发起一个“环回”诊断,行程最后一站的服务器会弹回一条TRACE响

应,并在相应主体中携带它收到的原始请求报文,这样客户端就可以查看在所有中间HTTP应用程

序组成的请求/响应链上,原始报文是否,以及如何被毁坏或修改过

TRACE方法主要用于诊断,验证请求是否如愿穿过了请求/响应链,它是一种很好的工具,可以

用来查看代理和其他应用程序对用户请求所产生的效果

尽管TRACE可以方便用于诊断,它的缺点在于它假定中间应用程序对各种不同类型请求(不同方

法--GET,HEAD,POST等)的处理是相同的,很多HTTP应用程序会根据方法的不同做出不同的处

理,比如,代理可能将POST请求直接发送给服务器,而将GET发送给另一个HTTP应用程序(比

如Web缓存),TRACE并不提供区分这些方法的机制,通常中间应用程序会自行决定对TRACE请求

的处理方式

TRACE请求中不能带有实体的主体部分,TRACE响应的实体主体部分包含了响应服务器收到的请

求的精确副本

  OPTIONS:请求服务器告知其支持的各种功能,可以询问服务器通常支持哪些方法,或者对

某些特殊资源支持哪些方法。(有些服务器可能只支持对一些特殊类型的对象使用特定的操作),这

为客户端应用程序提供了一种手段,使其不用实际访问那些资源就能判断访问各资源的最优方式

  DELETE:请求服务器删除URL所指定的资源,但是客户端应用程序无法保证输出操作一定会被执行,因为HTTP规范允许服务器在不通知客户端的情况下撤销请求

HTTP协议的URI及各种方法的更多相关文章

  1. HTTP 协议中 URI 和 URL 有什么区别?

    HTTP 协议中 URI 和 URL 有什么区别? HTTP = Hyper Text Transfer ProtocolURI = Universal Resource IdentifierURL ...

  2. 警惕使用WebClient.DownloadFile(string uri,string filePath)方法

    原文:警惕使用WebClient.DownloadFile(string uri,string filePath)方法 WebClient.DownloadFile(string uri,string ...

  3. I2C总线协议的软件模拟实现方法

    I2C总线协议的软件模拟实现方法 在上一篇博客中已经讲过I2C总线通信协议,本文讲述I2C总线协议的软件模拟实现方法. 1. 简述 所谓的I2C总线协议的软件模拟实现方法,就是用软件控制GPIO的输入 ...

  4. ORA-12560: TNS: 协议适配器错误的解决方法

    ORA-12560: TNS: 协议适配器错误的解决方法 造成ORA-12560: TNS: 协议适配器错误的问题的原因有三个: 1.监听服务没有起起来.windows平台个一如下操作:开始---程序 ...

  5. cannot open git-upload-pack,cannot open git-receive-pack,Can't connect to any URI错误解决方法eclipse

    cannot open git-upload-pack,cannot open git-receive-pack,Can't connect to any URI错误解决方法eclipse 解决ecl ...

  6. HTTP 协议中 GET 和 POST 方法详解

    GET请求报文分析 1.请求行 请求方法 GET(描述该请求采用了什么请求方法),HTTP 1.0 和 1.1 协议中共包含10种请求方法.不过 HTTP 1.1 中只有8种方法. URI 请求WEB ...

  7. [转载] HTTP 协议中 URI 和 URL 的区别

    出处:https://blog.csdn.net/qq_26975307/article/details/54429760 HTTP = Hyper Text Transfer ProtocolURI ...

  8. HTTP协议中GET和POST方法的区别

    转载 通常的理解 w3schools关于这个问题的解答:HTTP 方法:GET 对比 POST 列出了一般的理解: 方法 GET POST 后退按钮/刷新 无害 数据会被重新提交(浏览器应该告知用户数 ...

  9. WCF开发中将net.tcp协议寄宿到IIS的方法

    1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协议的服务,为了让IIS支持net.tcp,必须先安装WAS(Windows Process Activation Service),即 ...

随机推荐

  1. stat 查看文件修改时间

    Ø  访问时间(accesstime):读取一次文件的内容,该时间便会更新 Ø  修改时间(modifytime):对文件内容修改一次便会更新该时间. Ø  改变时间(changetime):更改文件 ...

  2. delphi TServerSocket阻塞线程单元 实例

    TServerSocket阻塞线程单元,希望对你有所帮助.需要注意的是:1.如果你使用TServerSocket的stNonBlocking模式,重写TServerClientThread线程时要重载 ...

  3. BC之The mook jong

    Problem Description ZJiaQ want to become a strong man, so he decided to play the mook jong.ZJiaQ wan ...

  4. Linux驱动之准备

    第一: 开始系统学习Linux驱动,以前断断续续也玩玩了一下,开贴来系统学习Linux驱动. 硬件平台是JZ2440-4.3 ARM9开发板,开发板运行系统版本Linux3.4.2内核(内核移植,下载 ...

  5. 通过反射获取父类中的泛型参数对应的Class对象

    假设有两个类:Dao 和 PersonDao,它们的代码如下: Dao: public class Dao<T> { private Class<T> clazz; T get ...

  6. 中南大学第一届长沙地区程序设计邀请赛 To Add Which?

    1350: To Add Which? Time Limit: 1 Sec  Memory Limit: 128 MB Description There is an integer sequence ...

  7. [ CodeVS冲杯之路 ] P1197

    不充钱,你怎么AC? 题目:http://codevs.cn/problem/1197/ 密钥的字母可以全转换为小写字母,然后一一映射,a→0,b→1,c→2,依此类推 对于密文只需将每一位减去对应密 ...

  8. Flash图表控件FusionCharts如何定制图表中的趋势线和趋势区

    FusionCharts中的趋势线是什么 趋势线是横跨图标的水平/垂直线条,用来表示一些预订数据值. 在图表中展示趋势线 用户可以使用<chart>元素中的trendlines属性来显示图 ...

  9. How to deploy JAVA Application on Azure Service Fabric

    At this moment, Azure Service Fabric does not support JAVA application natively (but it's on the sup ...

  10. No.012 Integer to Roman

    12. Integer to Roman Total Accepted: 71315 Total Submissions: 176625 Difficulty: Medium Given an int ...