⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 httpsession.cpp

📁 一个HTTP协议的封装类
💻 CPP
字号:
#include "StdAfx.h"
#include "HTTPSession.h"
#include <string>
#include <iostream>
using namespace std;
#include "fs\error\FaultCenter.h"
using namespace fs::error;

		HTTPSession::HTTPSession(MHTTPTransactionCallback& aCallback,BOOL bCreateSocket)
			:Socket(bCreateSocket),iCallback(aCallback)
		{
		}

		HTTPSession::~HTTPSession(void)
		{
		}

		VOID HTTPSession::OnReceive( CHAR* pBuf,UINT len )
		{
			printf("\nmessage from server:\n");

			iCallback.MHFRunL(pBuf,len);

			//在父类中会delete[] pBuf
			Socket::OnReceive(pBuf,len);
		}

		BOOL HTTPSession::Connect(const LPCSTR ip,UINT port,BOOL isDomainName)
		{
			BOOL ret=SetAddress(ip,port,isDomainName);
			if (!ret)
			{
				return FALSE;
			}

			INT retval=connect(m_socket,m_address.GetPtr(),m_address.GetSize());
			return FaultCenter::TryCatch(_T("socket"),_T("connect"),retval);
		}

		VOID HTTPSession::OnPassiveDisconnect()
		{
			printf("Passive Disconnect.\n");//被动断开
		}

		VOID HTTPSession::Open()
		{
			CreateSocket();
		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -