HTTP1Connection 和 HTTP1ServerConnection 的參數(shù)。
參數(shù):
no_keep_alive
?(bool) -- 如果為True,則始終在一個(gè)請(qǐng)求后關(guān)閉連接。chunk_size
?(int) – 一次讀入內(nèi)存的數(shù)據(jù)量max_header_size
?(int) – HTTP 表頭的最大數(shù)據(jù)量header_timeout
?(float) – 等待所有表頭的時(shí)間(秒)max_body_size
?(int) – body 的最大數(shù)據(jù)量body_timeout
?(float) – 讀取body時(shí)等待多長(zhǎng)時(shí)間(秒)decompress
?(bool) -- 如果為True,解碼傳入的 Content-Encoding: gzip實(shí)現(xiàn) HTTP/1.x 協(xié)議。
此類可以單獨(dú)用于客戶端,也可以通過(guò) HTTP1ServerConnection 用于服務(wù)器。
參數(shù):
?stream
?-IOStream
?is_client
?(bool) – 客戶端或服務(wù)器
?params
?– HTTP1ConnectionParameters 實(shí)例或無(wú)
?context
?– 一個(gè)不透明的應(yīng)用程序定義的對(duì)象,可以作為 connection.context 訪問(wèn)。
讀取單個(gè) HTTP 響應(yīng)。
典型的客戶端模式用法是使用 ?write_headers
?、?write
?和 ?finish
?寫入請(qǐng)求,然后調(diào)用 ?read_response
?。
參數(shù):?delegate
?– 一個(gè) ?HTTPMessageDelegate
?
在讀取完整響應(yīng)后返回解析為布爾值的 ?Future
?。 如果?stream
?仍處于打開(kāi)狀態(tài),則結(jié)果為True。
設(shè)置將在連接關(guān)閉時(shí)運(yùn)行的回調(diào)。
請(qǐng)注意,此回調(diào)與 ?HTTPMessageDelegate.on_connection_close
? 略有不同:HTTPMessageDelegate 方法在接收消息關(guān)閉連接時(shí)調(diào)用。 當(dāng)沒(méi)有活動(dòng)委托時(shí)使用此回調(diào)(例如,在服務(wù)器端,如果客戶端在發(fā)送請(qǐng)求后但在收到所有響應(yīng)之前關(guān)閉連接,則使用此回調(diào)。
控制底層流。
返回底層 IOStream 對(duì)象并停止所有進(jìn)一步的 HTTP 處理。 只能在 ?HTTPMessageDelegate.headers_received
? 期間調(diào)用。 旨在實(shí)現(xiàn)通過(guò) HTTP 握手建立隧道的 websocket 等協(xié)議。
為單個(gè)請(qǐng)求設(shè)置正文超時(shí)。
覆蓋來(lái)自 ?HTTP1ConnectionParameters
的值。
設(shè)置單個(gè)請(qǐng)求的正文大小限制。
覆蓋來(lái)自 ?HTTP1ConnectionParameters
的值。
實(shí)現(xiàn) ?HTTPConnection.write_headers
?
實(shí)現(xiàn) ?HTTPConnection.write
?。
為了向后兼容,允許但不推薦跳過(guò) ?write_headers
? 并使用預(yù)編碼的表頭塊調(diào)用 ?write()
?。
實(shí)現(xiàn) ?HTTPConnection.finish
?
HTTP/1.x 服務(wù)器。
參數(shù):
stream
?- 一個(gè) IOStreamparams
?– HTTP1ConnectionParameters 或無(wú)context
?– 一個(gè)不透明的應(yīng)用程序定義對(duì)象,可作為 connection.context 訪問(wèn)關(guān)閉連接。
返回服務(wù)循環(huán)退出后解析的 ?future
?。
開(kāi)始在此連接上處理請(qǐng)求。
參數(shù):?delegate
?– 一個(gè) ?HTTPServerConnectionDelegate
?
更多建議: