在ssl中向服务器提交的数据我看网上说是GET /login2.srf HTTP/1.1 \r\n 
Authorization: Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=example%40passport.com,pwd=password, lc=1033,id=507,tw=40,fs=1,ru=http%3A%2F%2Fmessenger%2Emsn%2Ecom,ct=1073355862,kpp=1,kv=5,ver=2.1.0173.1, tpf=ed1c2f217a21c191c61251eb8b73bb60 \r\n 
Host: login.passport.com \r\n \r\n 问题是提交这个服务器没有回应!!把Authorization:改成Authorization返回个400错误 invalid header name还有实际返回的数据是 ver = 2.1600,多一个选顶 rn = j4v7zwn,我快疯了,不知错在那里了!!! 可能原因1:数据头格式错误2:数据内容中选顶错误3:账号,密码 等错误有高手帮我分析分析吗!!

解决方案 »

  1.   

    前面没有知道,帮我解决下面也给分
    BOOL bAddHeaders = ::HttpAddRequestHeaders(hConnect,szHeaders,lstrlen(szHeaders),HTTP_ADDREQ_FLAG_ADD);这个API是加个头的,为什么不生效,头加不上去!!!!! // Open Internet session.
    HINTERNET hSession = ::InternetOpen("MSDN SurfBear",
    PRE_CONFIG_INTERNET_ACCESS,
    NULL, 
    INTERNET_INVALID_PORT_NUMBER,
    0) ; // Connect to www.microsoft.com.
    HINTERNET hConnect = ::InternetConnect(hSession,
    "www.microsoft.com",
    INTERNET_INVALID_PORT_NUMBER,
    "",
    "",
    INTERNET_SERVICE_HTTP,
    0,
    0) ;

    char szHeaders[] = "abc: abkjljfljljljlj\r\n\r\n";

    // Request the file /MSDN/MSDNINFO/ from the server.
    HINTERNET hHttpFile = ::HttpOpenRequest(hConnect,
     "GET",
     "/MSDN/MSDNINFO/",
     HTTP_VERSION,
     NULL,
     0,
     INTERNET_FLAG_DONT_CACHE,
     0) ;



    BOOL bAddHeaders = ::HttpAddRequestHeaders(hConnect,szHeaders,lstrlen(szHeaders),HTTP_ADDREQ_FLAG_ADD); printf("Add = %d",bAddHeaders);
    // Send the request.
    BOOL bSendRequest = ::HttpSendRequest(hHttpFile, NULL, 0, 0, 0);