HTTP 方法:GET 对比 POST
两�最常用的 HTTP 方法是:GET 和 POST。
什么是 HTTP ?
è¶…æ–‡æœ¬ä¼ è¾“å��议(HTTP)的设计目的是ä¿�è¯�客户端与æœ�务器之间的通信。
HTTP 的工作方å¼�是客户端与æœ�务器之间的请求-应ç”å��议。
web �览器�能是客户端,而计算机上的网络应用程�也�能作为�务器端。
举例:客户端(�览器)��务器�交 HTTP 请求;�务器�客户端返回�应。�应包�关于请求的状�信�以��能被请求的内容。
两� HTTP 请求方法:GET 和 POST
在客户机和�务器之间进行请求-�应时,两�最常被用到的方法是:GET 和 POST。
- GET - 从指定的资�请求数�。
- POST - �指定的资��交�被处�的数�。
GET �交�数一般显示在 URL 上,POST 通过表��交�会显示在 URL 上,POST 更具�蔽性:

GET 方法
请注æ„�,查询å—符串(å��ç§°/值对)是在 GET 请求的 URL ä¸å�‘é€�的:
有关 GET 请求的其他一些注释:
- GET 请求å�¯è¢«ç¼“å˜
- GET 请求ä¿�留在æµ�览器历å�²è®°å½•ä¸
- GET 请求å�¯è¢«æ”¶è—�为书ç¾
- GET 请求�应在处��感数�时使用
- GET 请求有长度�制
- GET 请求�应当用于�回数�
POST 方法
请注æ„�,查询å—符串(å��ç§°/值对)是在 POST 请求的 HTTP 消æ�¯ä¸»ä½“ä¸å�‘é€�的:
Host: runoob.com
name1=value1&name2=value2
有关 POST 请求的其他一些注释:
- POST 请求ä¸�会被缓å˜
- POST 请求ä¸�会ä¿�留在æµ�览器历å�²è®°å½•ä¸
- POST ä¸�能被收è—�为书ç¾
- POST 请求对数�长度没有�求
比较 GET 与 POST
下é�¢çš„è¡¨æ ¼æ¯”è¾ƒäº†ä¸¤ç§� HTTP 方法:GET å’Œ POST。
| GET | POST | |
|---|---|---|
| å�Žé€€æŒ‰é’®/刷新 | æ— å®³ | æ•°æ�®ä¼šè¢«é‡�æ–°æ��交(æµ�览器应该告知用户数æ�®ä¼šè¢«é‡�æ–°æ��交)。 |
| ä¹¦ç¾ | å�¯æ”¶è—�ä¸ºä¹¦ç¾ | ä¸�å�¯æ”¶è—�ä¸ºä¹¦ç¾ |
| ç¼“å˜ | èƒ½è¢«ç¼“å˜ | ä¸�èƒ½ç¼“å˜ |
| ç¼–ç �类型 | application/x-www-form-urlencoded | application/x-www-form-urlencoded or multipart/form-data。为二进制数æ�®ä½¿ç”¨å¤šé‡�ç¼–ç �。 |
| 历å�² | å�‚æ•°ä¿�留在æµ�览器历å�²ä¸ã€‚ | å�‚æ•°ä¸�会ä¿�å˜åœ¨æµ�览器历å�²ä¸ã€‚ |
| 对数æ�®é•¿åº¦çš„é™�制 | 是的。当å�‘é€�æ•°æ�®æ—¶ï¼ŒGET 方法å�‘ URL æ·»åŠ æ•°æ�®ï¼›URL 的长度是å�—é™�制的(URL 的最大长度是 2048 个å—符)。 | æ— é™�制。 |
| 对数æ�®ç±»åž‹çš„é™�制 | å�ªå…�许 ASCII å—符。 | 没有é™�制。也å…�许二进制数æ�®ã€‚ |
| 安全性 | 与 POST 相比,GET çš„å®‰å…¨æ€§è¾ƒå·®ï¼Œå› ä¸ºæ‰€å�‘é€�的数æ�®æ˜¯ URL 的一部分。 在å�‘é€�密ç �或其他æ•�感信æ�¯æ—¶ç»�ä¸�è¦�使用 GET ï¼� |
POST 比 GET æ›´å®‰å…¨ï¼Œå› ä¸ºå�‚æ•°ä¸�会被ä¿�å˜åœ¨æµ�览器历å�²æˆ– web æœ�务器日志ä¸ã€‚ |
| å�¯è§�性 | æ•°æ�®åœ¨ URL ä¸å¯¹æ‰€æœ‰äººéƒ½æ˜¯å�¯è§�的。 | æ•°æ�®ä¸�会显示在 URL ä¸ã€‚ |
其他 HTTP 请求方法
下é�¢çš„è¡¨æ ¼åˆ—å‡ºäº†å…¶ä»–ä¸€äº› HTTP 请求方法:
| 方法 | �述 |
|---|---|
| HEAD | 与 GET 相�,但�返回 HTTP 报头,�返回文档主体。 |
| PUT | ä¸Šä¼ æŒ‡å®šçš„ URI 表示。 |
| DELETE | åˆ é™¤æŒ‡å®šèµ„æº�。 |
| OPTIONS | 返回�务器支�的 HTTP 方法。 |
| CONNECT | 把请求连接转�到�明的 TCP/IP 通�。 |
风哥
liu***7080@qq.com
使用 Post ä¼ è¾“çš„æ•°æ�®ï¼Œå�¯ä»¥é€šè¿‡è®¾ç½®ç¼–ç �的方å¼�æ£ç¡®è½¬åŒ–䏿–‡ï¼›è€Œ Get ä¼ è¾“çš„æ•°æ�®å�´æ²¡æœ‰å�˜åŒ–。在以å�Žçš„程åº�ä¸ï¼Œæˆ‘们一定è¦�注æ„�这一点。
风哥
liu***7080@qq.com