HTTP_TIMEOUT_LIMIT_INFO 結構 (HTTP.h)
HTTP_TIMEOUT_LIMIT_INFO結構會定義應用程式特定的連線逾時限制。
在 URL 群組、伺服器會話或要求佇列上設定或查詢 HttpServerTimeoutsProperty 時,必須使用這個結構。
語法
typedef struct _HTTP_TIMEOUT_LIMIT_INFO {
HTTP_PROPERTY_FLAGS Flags;
USHORT EntityBody;
USHORT DrainEntityBody;
USHORT RequestQueue;
USHORT IdleConnection;
USHORT HeaderWait;
ULONG MinSendRate;
} HTTP_TIMEOUT_LIMIT_INFO, *PHTTP_TIMEOUT_LIMIT_INFO;
成員
Flags
指定屬性是否存在 的 HTTP_PROPERTY_FLAGS 結構。
EntityBody
要求實體內容到達的允許時間,以秒為單位。
當要求具有實體主體時,HTTP 伺服器 API 會開啟此定時器。 定時器到期一開始會設定為已設定的值。 當 HTTP 伺服器 API 在要求上收到其他資料指示時,它會重設定時器,以將另一個間隔提供給連線。
DrainEntityBody
允許 HTTP 伺服器 API 在 Keep-Alive 連線上清空實體主體的時間,以秒為單位。
在 Keep-Alive 連線上,應用程式傳送要求的響應之後,以及在要求實體主體完全抵達之前,HTTP Server API 會開始清空實體主體的其餘部分,以從用戶端到達另一個可能的管線要求。 如果清空剩餘實體主體的時間超過允許的期間,則連線逾時。
RequestQueue
在應用程式挑選要求之前,允許要求保留在要求佇列中的時間,以秒為單位。
IdleConnection
閒置連接的允許時間,以秒為單位。
只有在連線的第一個要求路由傳送至應用程式之後,才會強制執行此逾時。 如需詳細資訊,請參閱<備註>一節。
HeaderWait
允許 HTTP 伺服器 API 剖析要求標頭的時間,以秒為單位。
只有在連線的第一個要求路由傳送至應用程式之後,才會強制執行此逾時。 如需詳細資訊,請參閱<備註>一節。
MinSendRate
回應的最小傳送速率,以每秒位元組數為單位。 默認回應傳送速率為每秒 150 個字節。
若要停用此定時器,請將 MinSendRate 設定為 MAXULONG。
備註
此結構用於 HttpQueryServerSessionProperty 和 HttpSetServerSessionProperty 函式中,以設定或查詢連線逾時。 下表列出預設逾時。
計時器 | HTTP 伺服器 API 預設值 | HTTP 伺服器 API 寬組態 | 應用程式特定組態 |
---|---|---|---|
EntityBody | 2 分鐘 | No | Yes |
DrainEntityBody | 2 分鐘 | No | Yes |
RequestQueue | 2 分鐘 | No | Yes |
IdleConnection | 2 分鐘 | Yes | 限制 |
HeaderWait | 2 分鐘 | Yes | 限制 |
MinSendRate | 150 個字節/秒 | No | Yes |
呼叫 HttpSetServerSessionProperty 或 HttpSetUrlGroupProperty 來設定連線逾時只會影響呼叫的應用程式,而且不會設定驅動程式寬逾時限制。 您可以呼叫 HttpSetServiceConfiguration,為所有 HTTP 應用程式設定閒置連線和標頭等候定時器。 需要系統管理許可權,才能設定 HTTP 伺服器 API 寬逾時。 HTTP 伺服器 API 寬組態會影響電腦上的所有 HTTP 應用程式,並在關閉電腦時保存。
應用程式特定的 IdleConnection 和 HeaderWait 定時器會以有限為基礎進行設定。 在剖析標頭之前,HTTP 伺服器 API 無法判斷要求相關聯的要求佇列或 URL 群組。 因此,HTTP 伺服器 API 會針對連線上的第一個要求強制執行預設 IdleConnection 和 HeaderWait 定時器。 Keep-Alive 連線上的後續要求將會使用應用程式特定的逾時。
在伺服器會話上設定逾時會影響伺服器會話下的所有 URL 群組。 不過,如果 URL 群組已設定逾時,則 URL 群組的設定優先於伺服器會話設定。
將伺服器會話上的逾時設定為零會導致 HTTP 伺服器 API 還原為該定時器的預設值。 對於 URL 群組上設定的定時器,如果存在,則會使用伺服器會話逾時,否則會使用 HTTP 伺服器 API 預設值。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
標頭 | http.h |