先连 Https 代理 , Https 代理再连我的 server ?从原理上感觉很模糊

解决方案 »

  1.   

    和http差不多,只是传送过程加密了的
      

  2.   

    //通过HTTP方式代理 
    if( !ClientSock.Connect( g_ProxyInfo.m_strProxyIP,g_ProxyInfo.m_nProxyPort) ) 

    m_sError = _T("不能连接到代理服务器!"); 
    ClientSock.Close(); 
    return FALSE; 

    char buff[600]; 
    sprintf( buff, "%s%s:%d%s","CONNECT ",GetServerHostName(),GetPort()," HTTP/1.1 User-Agent: MyApp/0.1 "); 
    ClientSock.Send(buff,strlen(buff)); //发送请求 
    memset(buff,0,600); 
    ClientSock.Receive(buff,600); 
    if(strstr(buff, "HTTP/1.0 200 Connection established") == NULL) //连接不成功 

    m_sError = _T("通过代理连接主站不成功!"); 
    ClientSock.Close(); 
    return FALSE; 
    }
      

  3.   

    HTTP 和 HTTPS 默认端口不同,一个 80 一个 443
    感觉过程应该和HTTP Proxy是不同的
      

  4.   

    my god 抱歉,看错了,rfc文档应该有的吧?