HTTPS SOAP request fails for HTTP/1.1-only endpoint, but exported cURL works
Hi,
I was trying to make a SOAP request over HTTPS to a legacy endpoint.
The request itself is configured correctly, but in Yaak it fails with:
Client error: reqwest::Error { kind: Request, source: hyper_util::client::legacy::Error(Connect, Custom { kind: Other, error: Os { code: 54, kind: ConnectionReset, message: "Connection reset by peer" } }) }
Interestingly, if I use Copy as cURL from Yaak and run that exact command, the request succeeds.
The same request also works in Postman and Bruno. I tried them after spending some time debugging this in Yaak.
Postman has an option to choose the HTTP version. When HTTP/2 is selected explicitly, the request fails. With Auto or HTTP/1.x, the request succeeds.
Relevant curl output:
ALPN: curl offers h2,http/1.1
ALPN: server did not agree on a protocol. Uses default.
using HTTP/1.x
This makes me think Yaak may be failing during HTTP version negotiation or not gracefully falling back to HTTP/1.1 for older servers.
It would be great if Yaak could either:
- gracefully fall back to HTTP/1.1 in this case, or
- provide an HTTP version selector similar to Postman (Auto / HTTP/1.x / HTTP/2).
Thanks! Sending much love for Yaak.