[pve-devel] [PATCH proxmox] http: use request method from provided param instead of unconditional POST

Lukas Wagner l.wagner at proxmox.com
Mon Aug 4 10:06:04 CEST 2025


This fixes the "bad uri: POST is missing scheme" error that appeared
when using the webhook notification targets.

Fixes: a0dc071ee14 ("http: update to ureq3")
Signed-off-by: Lukas Wagner <l.wagner at proxmox.com>
---
 proxmox-http/src/client/sync.rs | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/proxmox-http/src/client/sync.rs b/proxmox-http/src/client/sync.rs
index b809ee38..fe87a0cf 100644
--- a/proxmox-http/src/client/sync.rs
+++ b/proxmox-http/src/client/sync.rs
@@ -127,7 +127,9 @@ impl HttpClient<String, String> for Client {
         let (parts, body) = request.into_parts();
 
         let agent = self.agent()?;
-        let mut req = http::Request::post(parts.method.as_str());
+        let mut req = http::Request::builder()
+            .method(parts.method.as_str())
+            .uri(parts.uri);
 
         for header in parts.headers.keys() {
             for value in parts.headers.get_all(header) {
@@ -182,7 +184,9 @@ impl HttpClient<&[u8], Vec<u8>> for Client {
         let (parts, body) = request.into_parts();
 
         let agent = self.agent()?;
-        let mut req = http::Request::post(parts.method.as_str());
+        let mut req = http::Request::builder()
+            .method(parts.method.as_str())
+            .uri(parts.uri);
 
         for header in parts.headers.keys() {
             for value in parts.headers.get_all(header) {
@@ -240,7 +244,9 @@ impl HttpClient<Box<dyn Read>, Box<dyn Read>> for Client {
         let (parts, body) = request.into_parts();
 
         let agent = self.agent()?;
-        let mut req = http::Request::post(parts.method.as_str());
+        let mut req = http::Request::builder()
+            .method(parts.method.as_str())
+            .uri(parts.uri);
 
         for header in parts.headers.keys() {
             for value in parts.headers.get_all(header) {
-- 
2.47.2





More information about the pve-devel mailing list