http的方法浅析

本文详细介绍了HTTP协议中的请求方法,包括GET、POST、DELETE、PUT等,并通过实战演示如何在Tomcat中启用Delete和Put请求方法,以及如何通过AjaxXMLHttpRequest发起这些请求。此外,文章还探讨了WebDAV技术对HTTP请求方法的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般来说,Web服务器默认的只支持Post和Get这两种“只读”的请求方法。但是随着Ajax XMLHttpRequest 和 REST风格应用的深入,我们发现Http 1.1协议还支持如下请求方法(Request Method):

  • OPTIONS
  • HEAD
  • DELETE
  • PUT
  • TRACE
  • CONNECT
    LOCK/UNLOCK
Get是最常用的,就是向Web Server发请求“获取”资源;那么Post就是向Web Server“邮寄”一些封装的数据包获取资源,这两者方法严格的说都是“索取”行为。
顾名思义,Delete方法就是通过http请求删除指定的URL上的资源啦,Delete请求一般会返回3种状态码:
  • 200 (OK) - 删除成功,同时返回已经删除的资源
  • 202 (Accepted) - 删除请求已经接受,但没有被立即执行(资源也许已经被转移到了待删除区域)
  • 204 (No Content) - 删除请求已经被执行,但是没有返回资源(也许是请求删除不存在的资源造成的)

Put方法就不多废话了,就是往Web Server上直接扔资源(上传资源)嘛, 

上面说的都是虚的,实战才是硬道理!

(本文始发于CSDN,作者胡奇的博客:http://blog.csdn.net/kthq )

  • 首先,我们要让Web Server支持Delete 和 Put请求方法,以大家熟悉的Tomcat为例:

Tomcat的web.xml 文件中配置 org.apache.catalina.servlets.DefaultServlet 的初始化参数

[xhtml]  view plain copy
  1. <init-param>    
  2.     <param-name>readonly</param-name>    
  3.     <param-value>false</param-value>   
  4. </init-param>  

readonly参数默认是true,即不允许delete和put操作,所以默认的通过XMLHttpRequest对象的put或者delete方法访问就会报告 http 403 forbidden 错误。

  • 接下来,从客户端通过 Ajax XMLHTTPRequest 发起 DELETE/PUT 请求:

    [javascript]  view plain copy
    1. function getXMLHTTPRequest(){  
    2.     if (XMLHttpRequest)    {  
    3.         return new XMLHttpRequest();  
    4.     } else {  
    5.         try{  
    6.             return new ActiveXObject('Msxml2.XMLHTTP');  
    7.         }catch(e){  
    8.             return new ActiveXObject('Microsoft.XMLHTTP');  
    9.         }  
    10.     }  
    11. }  
    12. var req = getXMLHTTPRequest();  
    13. req.open('DELETE','http://localhost/test.jsp',false);  
    14. req.send(null);  
    15. document.write(req.responseText);  

  • WebDAV也需要使用到这2种Http请求方法。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值