📄 httpclient.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 + -