From cea757a999afef950d3c541e4fbd3436dc608002 Mon Sep 17 00:00:00 2001 From: jaymie9019 Date: Tue, 10 Sep 2024 15:55:24 +0800 Subject: [PATCH] =?UTF-8?q?feat(wasm):=20=E4=BC=98=E5=8C=96=20PluginHttpWr?= =?UTF-8?q?apper=20=E4=B8=AD=20res=5Fheaders=20=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugins/wasm-rust/src/plugin_wrapper.rs | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/plugins/wasm-rust/src/plugin_wrapper.rs b/plugins/wasm-rust/src/plugin_wrapper.rs index fcb6f7a574..76e8d1a05b 100644 --- a/plugins/wasm-rust/src/plugin_wrapper.rs +++ b/plugins/wasm-rust/src/plugin_wrapper.rs @@ -155,7 +155,7 @@ where Err(_) => { log( LogLevel::Warn, - format!("http header contains non-ASCII characters header: {}", k ).as_str(), + format!("request http header contains non-ASCII characters header: {}", k ).as_str(), ).unwrap(); } } @@ -202,9 +202,20 @@ where num_headers: usize, end_of_stream: bool, ) -> HeaderAction { - for (k, v) in self.get_http_response_headers() { - self.res_headers.insert(k, v); + for (k, v) in self.get_http_response_headers_bytes() { + match String::from_utf8(v) { + Ok(header_value) => { + self.res_headers.insert(k, header_value); + } + Err(_) => { + log( + LogLevel::Warn, + format!("response http header contains non-ASCII characters header: {}", k ).as_str(), + ).unwrap(); + } + } } + let ret = self .http_content .on_http_response_headers(num_headers, end_of_stream);