请求方法HTTP/1.1协议中共定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式:
OPTIONS
这个方法可使服务器传回该资源所支持的所有HTTP请求方法。用'*'来代替资源名称,向Web服务器发送OPTIONS请求,可以测试服务器功能是否正常运作。
HEAD
与GET方法一样,都是向服务器发出指定资源的请求。只不过服务器将不传回资源的本文部份。它的好处在于,使用这个方法可以在不必传输全部内容的情况下,就可以获取其中“关于该资源的信息”(元信息或称元数据)。
GET
向指定的资源发出“显示”请求。使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中,例如在Web Application中。其中一个原因是GET可能会被网络蜘蛛等随意访问。
POST
向指定资源提交数据,请求服务器进行处理(例如提交表单或者上传文件)。数据被包含在请求本文中。这个请求可能会创建新的资源或修改现有资源,或二者皆有。
PUT
向指定资源位置上传其最新内容。
DELETE
请求服务器删除Request-URI所标识的资源。
TRACE
回显服务器收到的请求,主要用于测试或诊断。
CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。通常用于SSL加密服务器的链接(经由非加密的HTTP代理服务器)。
方法名称是区分大小写的。当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Method Not Allowed);当服务器不认识或者不支持对应的请求方法的时候,应当返回状态码501(Not Implemented)。
HTTP服务器至少应该实现GET和HEAD方法,其他方法都是可选的。当然,所有的方法支持的实现都应当符合下述的方法各自的语义定义。此外,除了上述方法,特定的HTTP服务器还能够扩展自定义的方法。
参考文章:超文本传输协议
http://zh.wikipedia.org/wiki/Http
分享到:
相关推荐
nginx配置中找到对http method的所有制约
java解决405 - HTTP method GET is not supported by this URL
主要介绍了php采用curl访问域名返回405 method not allowed提示的解决方法,需要的朋友可以参考下
方法重写 使您可以在客户端不支持的位置使用HTTP动词,例如PUT或DELETE。 安装 这是通过提供的模块。 使用完成 : $ npm install method-override ... (默认值: X-HTTP-Method-Override ) options.methods
MyTinyHTTPd基于TinyHTTPd改写的自己的HttpWebServer,把所有方法封装变成两个类:HttpWebServer和HttpMethod
addCookie(Cookie) - Method in class javax.servlet.http.HttpServletResponseWrapper The default behavior of this method is to call addCookie(Cookie cookie) on the wrapped response object. addCookie...
安全测试-渗透测试-不安全的http方法问题及解决方案.doc
主要介绍了http请求405错误方法不被允许的解决 (Method not allowed),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
public int executeMethod(HostConfiguration hostconfig, HttpMethod method, HttpState state) throws IOException, HttpException { return 0;} public String getHost() { return null;} public int getPort...
method.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler()); // 需要添加的body数据 Part[] parts = {new StringPart("", "")}; method....
发送POST:var hp = new HttpHelper("http://www.cnblogs.com/upload",HttpMethod.POST); hp.AddPostData("uid", "123123"); hp.Send(); 表单上传文件:var http = new PostFileHelper(...
<http-method>PUT</http-method> <http-method>DELETE</http-method> <http-method>HEAD</http-method> <http-method>OPTIONS</http-method> <http-method>TRACE</http-method> <auth-method>BASIC...
org.apache.http.client.methods Standard HTTP method implementations. org.apache.http.client.params Deprecated. org.apache.http.client.protocol Client specific HTTP protocol handlers. org.apache....
HttpURL org.apache.commons.httpclient.HttpHost org.apache.commons.httpclient.HttpsURL org.apache.commons.httpclient.HttpState org.apache.commons.httpclient.ProxyHost org.apache.commons.httpclient.auth.NTLM org.apache.commons.httpclient.HttpClient org.apache.commons.httpclient.HttpMethod org.apache....
支持 GET, POST, PUT, PATCH, DELETE, HEAD 等各种 HTTP Method 及 Content-Type, URL /{Path}/{Variable}。不仅适用于 RESTful、类 RESTful、GRPC 的 API,还是腾讯 APIJSON 官方建议的文档与测试工具。腾讯内部...
Alamofire 是 Swift 语言的 HTTP 网络开发工具包,功能强大,支持各种 HTTP Method、JSON、文件上传、文件下载和多种认证方法。示例代码:Alamofire.request(.GET, "http://httpbin.org/get", parameters: [...
使用GET、POST、PUT、DELETE共4个HTTP Method,而非简单的GET和POST两者。 响应使用HTTP状态码来标志请求的执行结果,而非以往的success字段。 URL符合业界普遍接受的REST规则,减少在URL中标识操作类型的情况,...
spring-webmvc-4.2.3.RELEASE.jar spring-webmvc-4.2.6.RELEASE.jar
HttpMethod method = new GetMethod("http://www.baidu.com"); //使用POST方法 HttpMethod method = new PostMethod("http://java.sun.com";); 3. 如果需要发送请求参数,可调用HttpGet、HttpPost共同的set...
if (Request.HttpMethod.ToLower() == "post")//判断传输方法是否为post { Stream s = System.Web.HttpContext.Current.Request.InputStream; byte[] b = new byte[s.Length]; s.Read(b, 0, (int)s.Length); ...