Buy commercial curl support. We
help you work out your issues, debug your libcurl applications, use the API,
port to new platforms, add new features and more. With a team lead by the
curl founder Daniel himself.
Strange behavior of Expect 100 Continue
- Contemporary messages sorted: [ by date ] [ by thread ] [ by subject ] [ by author ] [ by messages with attachments ]
From: \[Quipsy\] Markus Karg via curl-library <curl-library_at_lists.haxx.se>
Date: Mon, 3 Feb 2025 13:31:22 +0000
In a rather simplisic application I noticed the following, rather strange behavior. I hope that anyone could help us with the following.
The application is using curl easy API to create a curl instance, sends a request, closes the instances, then does the same again, etc. - which is working PRETTY WELL but rather slow.
In an attempt to speed up things we wanted to reuse the existing http/1.1 connection, so we removed the closing and reinitializing of curl between each http invocation.
But now the second invocation gets "100 Continue" response instead of "200 OK"...?!
...
Connected to localhost<http://localhost> (::1) port 8080 (#0)
Server auth using Basic with user 'XXX'
>>>STATUS FORWARDED TO CALLING APPLICATION NOW IS: HTTP/1.1 200 OK
Mark bundle as not supporting multiuse
Connection #0 to host localhost<http://localhost> left intact
Found bundle for host localhost<http://localhost>: 0xcbc6d8 [serially]
Can not multiplex, even if we wanted to!
Re-using existing connection! (#0) with host localhost<http://localhost>
Connected to localhost<http://localhost> (::1) port 8080 (#0)
Done waiting for 100-continue
>>>STATUS FORWARDED TO CALLING APPLICATION NOW IS: HTTP/1.1 100 Continue
...
What we do not understand is:
* Why is the result of the second invocation "100 Continue" instead of "200 OK"?
* Why does it work well once we close curl and reinit it between both invocations (which is the workaround we currently do)?
Thanks in advance!
-Markus
Date: Mon, 3 Feb 2025 13:31:22 +0000
In a rather simplisic application I noticed the following, rather strange behavior. I hope that anyone could help us with the following.
The application is using curl easy API to create a curl instance, sends a request, closes the instances, then does the same again, etc. - which is working PRETTY WELL but rather slow.
In an attempt to speed up things we wanted to reuse the existing http/1.1 connection, so we removed the closing and reinitializing of curl between each http invocation.
But now the second invocation gets "100 Continue" response instead of "200 OK"...?!
...
Connected to localhost<http://localhost> (::1) port 8080 (#0)
Server auth using Basic with user 'XXX'
>>>STATUS FORWARDED TO CALLING APPLICATION NOW IS: HTTP/1.1 200 OK
Mark bundle as not supporting multiuse
Connection #0 to host localhost<http://localhost> left intact
Found bundle for host localhost<http://localhost>: 0xcbc6d8 [serially]
Can not multiplex, even if we wanted to!
Re-using existing connection! (#0) with host localhost<http://localhost>
Connected to localhost<http://localhost> (::1) port 8080 (#0)
Done waiting for 100-continue
>>>STATUS FORWARDED TO CALLING APPLICATION NOW IS: HTTP/1.1 100 Continue
...
What we do not understand is:
* Why is the result of the second invocation "100 Continue" instead of "200 OK"?
* Why does it work well once we close curl and reinit it between both invocations (which is the workaround we currently do)?
Thanks in advance!
-Markus
-- Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library Etiquette: https://curl.se/mail/etiquette.htmlReceived on 2025-02-03