C# WinHTTP连接

C# WinHTTP连接,c#,winhttp,C#,Winhttp,我试图让WinHttp进行“连接”调用(与“获取”或“发布”相反),如下所示: CONNECT www.etrade.com:443 HTTP/1.0 Host: www.etrade.com 但是,winhttp始终在“CONNECT”动词之后强制执行路径,如下所示(在位置的前面): 有解决办法吗?还是我做错了什么?这是在C#.net 3.5框架中,Winhttp 5.1为什么使用Winhttp而不是System.net 您的代码(具体)是什么样子的 您希望通过手动连接实现什么?连接不是HT

我试图让WinHttp进行“连接”调用(与“获取”或“发布”相反),如下所示:

CONNECT www.etrade.com:443 HTTP/1.0
Host: www.etrade.com
但是,winhttp始终在“CONNECT”动词之后强制执行路径,如下所示(在位置的前面):


有解决办法吗?还是我做错了什么?这是在C#.net 3.5框架中,Winhttp 5.1

为什么使用Winhttp而不是System.net

您的代码(具体)是什么样子的


您希望通过手动连接实现什么?

连接不是HTTP动词,它是HTTPS请求的开始({SSL连接部分)。对于WinHTTP,您只需在OpenRequest上使用
WinHTTP\u标志\u SECURE
。类似于:

hConnect = WinHttpConnect(
              hSession, 
              "www.etrade.com", 
              443, 
              0
           );
hRequest = WinHttpOpenRequest(
              hConnect,  
              "GET", 
              "/", 
              "HTTP/1.0", 
              WINHTTP_NO_REFERER, 
              WINHTTP_DEFAULT_ACCEPT_TYPES, 
              WINHTTP_FLAG_SECURE
           );
这将获得一个连接(对于SSL连接),然后是一个
GET/
(对于HTTP部分)

hConnect = WinHttpConnect(
              hSession, 
              "www.etrade.com", 
              443, 
              0
           );
hRequest = WinHttpOpenRequest(
              hConnect,  
              "GET", 
              "/", 
              "HTTP/1.0", 
              WINHTTP_NO_REFERER, 
              WINHTTP_DEFAULT_ACCEPT_TYPES, 
              WINHTTP_FLAG_SECURE
           );