I have two questions about "under the hood" processes executed by Webrequest and the getresponse method.
1) I have noticed while packet capturing that, when doing a webrequest with a payload, packets starting a TCP/IP connection are sent and received *before* the getresponse method? I would have expected the payload to be cached and sent only when the getresponse was called?
2) I have a webrequest case that has me puzzled. It is an HTTPS URI. All proceeds as expected (443 TCP/IP connection made before getresponse called) until the getresponse is called. When that happens, the process attempts to create a new TCP/IP connection to the server, this one being on port 80 (not HTTPS). Since the request is not HTTPS, the server ignores it and the process times out with a "no response from server".
What would cause the getresponse method to spawn a new connection, and why would it send it via HTTP when the original connection was made via HTTPS? The certificate for the server is valid, and I have tried turning off the check-certificate functionality.
Thanks for any insight on both questions.