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

📄 httpclient.h

📁 本人买的<<VC++项目开发实例>>源代码配套光盘.
💻 H
字号:
// HttpClient.h: interface for the CHttpClient class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(__HTTPCLIENT__H)
#define __HTTPCLIENT__H

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <Winsock2.h>
#pragma comment(lib,  "Ws2_32.lib")  //加入了对于Windows socket动态链接库地自动链接

#include <string>					// for std::string

//for exception
const int E_HC_SERVER_IP_ERROR = 0;
const int E_HC_SOCKET_CREATE = 1;
const int E_HC_CONNECT_ERROR = 2;
const int E_HC_SEND_ERROR = 3;
const int E_HC_RECV_ERROR = 4;
const int E_HC_SOCKET_ENV = 5;
//模拟一个HTTP的客户.
//注意在这个类中使用了 c++ 的异常处理,所以要在编译HttpClient.cpp的时候 加上 /GX设置
class CHttpClient  
{
#define RESPONSE_BUFFER_SIZE (1024 + 1)
public:
	CHttpClient();
	//清除建立的环境.
	virtual ~CHttpClient();
private:
	//初始化socket的起始环境。
	bool InitSocket();
	//如果没有抛出异常就表明
	//已经准备好了,
	//否则说明准备失败
	 void InitServerAddress(const char * lpServerName, const char *lpPort,  SOCKADDR_IN &saServer) throw (int *);	
protected:
	virtual std::string  *HTTPMethod(const char * lpServerName, const char *lpPort, const char *lpURL, const char *szMethodRequest);
public:
	//如果成功则返回为
	//响应结果,否则返回为 ""
	std::string *GET(const char * lpServerName, const char *lpPort, const char *lpURL, const char *lpExtraHeaderInfo);	
};

#endif // !defined(AFX_HTTPCLIENT1_H__73A4DDFA_C493_4816_AA76_96138E7CD5FE__INCLUDED_)

⌨️ 快捷键说明

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