用CInternetSession实现HTTP POST登录

最近,在编码时发现,原来使用第三方类库实现的HTTP登录验证对Session的处理不是很理想,于是在网上搜集了一些资料,尝试用CInternetSession实现HTTP POST登录验证,代码如下:

 

        CString   strResultStr;
        CInternetSession   session;  
        CHttpConnection   *pConnection;  
        CHttpFile   *pFile; 
        BOOL   retFlag; 

        CString strUserName = "jackongxp@163.com";

        CString strPassword = "666666";

 

        //与服务器建立连接 
        pConnection   =   session.GetHttpConnection( "www.XXXXX.com" );     
        CString   strHeaders,   tempStr;  
        strHeaders   =   _T("Content-Type:   application/x-www-form-urlencoded"); 

 

        //登录页面为 www.XXXXX.com/Client/Login.aspx
        pFile=pConnection->OpenRequest(CHttpConnection::HTTP_VERB_POST,    "/Client/Login.aspx?");


        CString strUserinfo;

        //在登录页面中主要有两个输入控件,为TextBoxUserName、TextBoxPassword,分别输入用户名和密码
        strUserinfo.Format( "TextBoxUserName=%s&TextBoxPassword=%s", strUserName, strPassword );   

        BOOL result   =   pFile->SendRequest(  
            strHeaders,  
            (LPVOID)(LPCTSTR)strUserinfo,   strUserinfo.GetLength() );

 

        //将登录验证后服务器返回的信息放入strResultStr中

        do  
        {  
            pFile->SetReadBufferSize(10*1024);  
            retFlag   =   pFile->ReadString(tempStr);  
            strResultStr +=   tempStr   +   "/n";  
        }while(retFlag   !=   FALSE);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值