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

備註

此結構用於 HttpQueryServerSessionPropertyHttpSetServerSessionProperty 函式中,以設定或查詢連線逾時。 下表列出預設逾時。

計時器 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
 

呼叫 HttpSetServerSessionPropertyHttpSetUrlGroupProperty 來設定連線逾時只會影響呼叫的應用程式,而且不會設定驅動程式寬逾時限制。 您可以呼叫 HttpSetServiceConfiguration,為所有 HTTP 應用程式設定閒置連線和標頭等候計時器。 需要系統管理許可權,才能設定 HTTP 伺服器 API 寬逾時。 HTTP 伺服器 API 寬組態會影響電腦上的所有 HTTP 應用程式,並在關閉電腦時保存。

應用程式特定的 IdleConnectionHeaderWait 計時器會以有限為基礎進行設定。 在剖析標頭之前,HTTP 伺服器 API 無法判斷要求相關聯的要求佇列或 URL 群組。 因此,HTTP 伺服器 API 會針對連線上的第一個要求強制執行預設 IdleConnectionHeaderWait 計時器。 Keep-Alive連線上的後續要求將會使用應用程式特定的逾時。

在伺服器會話上設定逾時會影響伺服器會話下的所有 URL 群組。 不過,如果 URL 群組已設定逾時,則 URL 群組的設定優先于伺服器會話設定。

將伺服器會話上的逾時設定為零會導致 HTTP 伺服器 API 還原為該計時器的預設值。 對於 URL 群組上設定的計時器,如果存在,則會使用伺服器會話逾時,否則會使用 HTTP 伺服器 API 預設值。

規格需求

   
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 HTTP.h

另請參閱

HTTP 伺服器 API 2.0 版結構

HTTP_SERVER_PROPERTY

HttpQueryRequestQueueProperty

HttpQueryServerSessionProperty

HttpQueryUrlGroupProperty

HttpSetRequestQueueProperty

HttpSetServerSessionProperty

HttpSetUrlGroupProperty