请求中提供了HTTP方法,该方法指定了客户端已请求的操作。下表列出了最常用的HTTP方法-
S.No. | Method & Remark |
---|---|
1 |
GET GET方法用于获取数据 |
2 |
POST POST方法用于提交数据 |
3 |
PUT PUT方法用于修改数据 |
4 |
DELETE DELETE方法用于删除数据 |
GET Method
GET请求通过在请求的URL部分中指定参数来从Web服务器检索数据。这是用于文档检索的主要方法。下面的示例利用GET方法获取hello.htm:
GET /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.learnfk.com Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
针对上述GET请求的服务器响应如下:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
<html> <body> <h1>Hello, World!</h1> </body> </html>
HEAD Method
HEAD方法在函数上与GET相似,不同之处在于服务器使用响应行和标头(但没有实体主体)进行回复。下面的示例使用HEAD方法来获取有关hello.htm的头信息:
HEAD /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.learnfk.com Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
针对上述GET请求的服务器响应如下:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
您会注意到,这里的服务器在标头之后不发送任何数据。
POST Method
当您要将一些数据发送到服务器时使用POST方法,例如文件更新,表单数据等。下面的示例利用POST方法将表单数据发送到服务器,它将由服务器处理。 process.cgi,最后将返回响应:
POST /cgi-bin/process.cgi HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.learnfk.com Content-Type: text/xml; charset=utf-8 Content-Length: 88 Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
<?xml version="1.0" encoding="utf-8"?> <string xmlns="http://clearforest.com/">string</string>
服务器端脚本process.cgi处理传递的数据并发送以下响应:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
<html> <body> <h1>Request Processed Successfully</h1> </body> </html>
PUT Method
PUT方法用于请求服务器在给定URL指定的位置存储包含的实体。以下示例请求服务器将给定的实体正文保存在服务器根目录下的hello.htm中:
PUT /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.learnfk.com Accept-Language: en-us Connection: Keep-Alive Content-type: text/html Content-Length: 182
<html> <body> <h1>Hello, World!</h1> </body> </html>
服务器会将给定的实体正文存储在hello.htm文件中,并将以下响应发送回客户端:
HTTP/1.1 201 Created Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Content-type: text/html Content-length: 30 Connection: Closed
<html> <body> <h1>The file was created.</h1> </body> </html>
DELETE Method
DELETE方法用于请求服务器在给定URL指定的位置删除文件。以下示例要求服务器删除服务器根目录下的给定文件hello.htm:
DELETE /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.Learnfkpoint.com Accept-Language: en-us Connection: Keep-Alive
服务器将删除提到的文件hello.htm,并将以下响应发送回客户端:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Content-type: text/html Content-length: 30 Connection: Closed
<html> <body> <h1>URL deleted.</h1> </body> </html>
参考链接
https://www.learnfk.com/expressjs/expressjs-http-methods.html
标签:Content,HTTP,htm,无涯,Accept,ExpressJS,Connection,服务器 From: https://blog.51cto.com/u_14033984/9481421