When `try_into_http_request` was used with an invalid base URI the code was panicking. Acording to `http::request::Builder` documentation, `headers_mut` returns `None` if the builder contains errors, which was the case when an invalid URI was provided. The new version only sets the additional headers in case that there are no errors on the builder, preventing the panic. The conversion will return an error when the builder is consumed on `body`.