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

📄 sockcommon.h

📁 PDA版的小型WEB服务器
💻 H
字号:
#include "stdafx.h"
#include <WinSock2.h>
#pragma once

#ifndef _SOCK_COMMON_H
#define _SOCK_COMMON_H

#define MaxBufferSize 1024

struct Arg{
	SOCKET acceptSock;
	char* url;
};


struct HttpHeader
{
	char RequestMethod[20];
	char FileName[255];
	char FilePath[255];
	char HttpVersion[10];
	char Host[255];
	char Language[10];
	char QueryString[1000];
	int ContentLength;
	char Parameter[5000];//the size will be adjusted according the http protocol;
	char Referer[255];
	bool IsValid;
};


char* strDup(char const* str);void SendData(LPVOID lpv);UINT ServerListenThread(LPVOID lpv);UINT HttpCommunicate(LPVOID lpv);boolean Receive(SOCKET acceptScok,char *pRecvBuffer, int nRecvSize, int nSecs);HttpHeader parseRequestLine(char* pRequestLine);void SendLocationHead(SOCKET msSocket,const int nStatusCode,const char *pStatusDesStr,const char *pLocationUrl);char* GetLocationHead(int nStatusCode,const char* pStatusDesStr,const char *pLocationUrl,char* pRtnVal);void SendHead(SOCKET msSocket,const int nStatusCode,const char* szTypeName,const char *pStatusDesStr,						const char* pFileModifyTime,int nHtmlSize,const char *pErrorDetailMsg);char* GetResponseHead(int nStatusCode,const char* pStatusDesStr,const char* szTypeName,						const char* pFileModifyTime,int nResponseContextSize,char* pRtnVal);int ConfirmSend(SOCKET s_socket,const char *pBuffer, int nSendSize, int nSecs);int Send(SOCKET s_socket,const char *pBuffer, int nSendSize, int nSecs);char* GetFileExtName(char *pFileName);void SendFile(SOCKET msSocket,CFile* pFile);void Close(SOCKET s_socket);CFile* Openfile(char * pFileName);void initialHeader(HttpHeader &head);#endif

⌨️ 快捷键说明

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