# 4.14 Max-Forwards
> 作者:肖鵬-SpiritLing 時間:2018-11-24
~~~[sequence]
客戶端-->代理服務器1: Max-Forwards: 2
客戶端-->代理服務器1: (只能向下轉發兩次了)
代理服務器1-->代理服務器2: Max-Forwards: 1
代理服務器1-->代理服務器2: (只能向下轉發一次了)
代理服務器2-->源服務器: X
源服務器-->代理服務器2: X
代理服務器2-->客戶端: Max-Forwards: 0
代理服務器2-->客戶端: (由我進行返回響應)
~~~
> 每次轉發數值減一,當數值為0時,則返回響應
```http
Max-Forwards: 2
```
通過 TRACE 方法或 OPTIONS 方法,發送含有首部字段 `Max-Forwards` 的請求時,該字段以十進制整數形式指定可經過的服務器最大數目。服務器在往下一個服務器轉發請求之前,會將 `Max-Forwards` 的值減一后重新賦值。當服務器接收到 `Max-Forwards` 值為 0 的請求時,則不再進行轉發。而是直接返回響應。
使用 HTTP協議通信時,請求可能會經過代理等多臺服務器。途中,如果代理服務器由于某些原因導致請求轉發失敗,客戶端也就等不到服務器返回的響應了。對此,我們無從可知。
可以靈活使用首部字段 `Max-Forwards` 字段值為 0 ,服務器就會立即返回響應,由此我們至少可以對以那臺服務器為終點的傳輸路徑的通信狀況有所把握
> 作者:肖鵬-SpiritLing 時間:2018-11-24
- 首語
- 第一章 HTTP協議及網絡基礎
- 第二章 協議返回狀態碼
- 第三章 HTTP通用首部字段
- 第一節 Cache-Control字段
- 第二節 Connection 字段
- 第三節 Date 字段
- 第四節 Pragma 字段
- 第五節 Trailer 字段
- 第六節 Transfer-Encoding 字段
- 第七節 Upgrade 字段
- 第八節 Via 字段
- 第九節 Warning 字段
- 第四章 HTTP請求首部字段
- 第一節 Accept 字段
- 第二節 Accept-Charset 字段
- 第三節 Accept-Encoding 字段
- 第四節 Accept-Language 字段
- 第五節 Authorization 字段
- 第六節 Expect 字段
- 第七節 From 字段
- 第八節 Host 字段
- 第九節 If-Match 字段
- 第十節 If-Modified-Since 字段
- 第十一節 If-None-Match 字段
- 第十二節 If-Range 字段
- 第十三節 If-Unmodified-Since 字段
- 第十四節 Max-Forwards 字段
- 第十五節 Proxy-Authorization 字段
- 第十六節 Range 字段
- 第十七節 Referer 字段
- 第十八節 TE 字段
- 第十九節 User-Agent 字段
- 第五章 HTTP響應首部字段
- 第一節 Accept-Ranges 字段
- 第二節 Age 字段
- 第三節 ETge 字段
- 第四節 Location 字段
- 第五節 Proxy-Authenticate 字段
- 第六節 Retry-After 字段
- 第七節 Server 字段
- 第八節 Vary 字段
- 第九節 WWW-Authenticate 字段
- 第六章 HTTP實體首部字段
- 第一節 Allow 字段
- 第二節 Content-Encoding字段
- 第三節 Content-Language 字段
- 第四節 Content-Length 字段
- 第五節 Content-Location 字段
- 第六節 Content-MD5 字段
- 第七節 Content-Range 字段
- 第八節 Content-Type 字段
- 第九節 Expires 字段
- 第十節 Last-Modified 字段
- 第七章 Cookie相關和其他的首部字段