IHttpCachePolicy::AppendVaryByQueryString 方法
將查詢值附加至快取原則。
語法
virtual HRESULT AppendVaryByQueryString(
PCSTR pszParam
) = 0;
參數
pszParam
包含要附加之自訂查詢字串之 Null 終止字串的指標。
-或-
NULL。
傳回值
HRESULT
。 可能的值包括 (但不限於) 下表中的這些值。
值 | 描述 |
---|---|
S_OK | 表示 pszParam 為 Null。-或- 表示 pszParam 附加至查詢清單。 |
ERROR_NOT_ENOUGH_MEMORY | 表示堆積記憶體已耗盡。 |
E_FAIL | 表示作業失敗。 |
備註
註冊要求或回應事件的CHttpModule衍生類別會接收IHttpCoNtext指標作為對應 virtual
方法上的參數。 若要附加自訂查詢,請呼叫 IHttpCoNtext::GetResponse 方法、 IHttpResponse::GetCachePolicy 方法,最後呼叫 AppendVaryByQueryString
方法。
AppendVaryByQueryString
行為取決於實作。 您應該使用下列資訊作為指導方針,但在所有案例中可能都不正確:
IHttpCachePolicy介面的目前預設實作器會宣告 private
包含變數標頭資料的緩衝區。 在建構實作者期間,此緩衝區會初始化為空白。 每次呼叫 時 AppendVaryByQueryString
,如果 pszParam
參數為 Null, AppendVaryByQueryString
就會立即傳回S_OK。 否則,緩衝區會展開以保存 的 pszParam
複本,包括 null 終止字元,如果緩衝區目前不是空的,則加上 1。 然後,如果緩衝區不是空的,則會將 ',' 字元附加至緩衝區。 最後,的內容 pszParam
會附加至緩衝區,包括 null 終止字元。
實作者的注意事項
IHttpCachePolicy 實作者負責將參數複製到 pszParam
緩衝區,因為與 相關聯的 pszParam
資料不保證在 呼叫 AppendVaryByQueryString
之後有效。
來電者的注意事項
IHttpCachePolicy
用戶端負責將 Null 參數或以 Null pszParam
終止的字串傳遞至 AppendVaryByHeader
方法。 用戶端也會負責在 呼叫 之後處置 pszParam
,因為 IHttpCachePolicy
實作者會複製到 pszParam
內部 AppendVaryByHeader
緩衝區。
預設 IHttpCachePolicy
實作者所使用的內部緩衝區是自訂標頭的逗號分隔字串。 因此, pszParam
不得包含 ',' 字元。
規格需求
類型 | 描述 |
---|---|
Client | - Windows Vista 上的 IIS 7.0 - Windows 7 上的 IIS 7.5 - Windows 8 上的 IIS 8.0 - Windows 10上的 IIS 10.0 |
伺服器 | - Windows Server 2008 上的 IIS 7.0 - Windows Server 2008 R2 上的 IIS 7.5 - Windows Server 2012 上的 IIS 8.0 - Windows Server 2012 R2 上的 IIS 8.5 - Windows Server 2016上的 IIS 10.0 |
產品 | - IIS 7.0、IIS 7.5、IIS 8.0、IIS 8.5、IIS 10.0 - IIS Express 7.5、IIS Express 8.0、IIS Express 10.0 |
標頭 | Httpserv.h |