HttpResponseHeader.h
上传用户:dengkfang
上传日期:2008-12-30
资源大小:5233k
文件大小:2k
源码类别:

CA认证

开发平台:

Visual C++

  1. /*
  2. Module : HttpResponseHeader.h
  3. Purpose: Defines the interface for a class to simplify sending Http response headers
  4. Created: PJN / 22-04-1999
  5. Copyright (c) 1999 - 2005 by PJ Naughter.  
  6. All rights reserved.
  7. Copyright / Usage Details:
  8. You are allowed to include the source code in any product (commercial, shareware, freeware or otherwise) 
  9. when your product is released in binary form. You are allowed to modify the source code in any way you want 
  10. except you cannot modify the copyright details at the top of each module. If you want to distribute source 
  11. code with your application, then you are only allowed to distribute versions released by the author. This is 
  12. to maintain a single distribution point for the source code. 
  13. */
  14. /////////////////////////////// Defines ///////////////////////////////////////
  15. #ifndef __HTTPRESPONSEHEADER_H__
  16. #define __HTTPRESPONSEHEADER_H__
  17. #ifndef W3MFC_EXT_CLASS
  18. #define W3MFC_EXT_CLASS
  19. #endif
  20. /////////////////////////////// Includes //////////////////////////////////////
  21. #include "HttpSocket.h"
  22. /////////////////////////////// Classes ///////////////////////////////////////
  23. //Class which is used to simplify forming and returning a header to the client
  24. class W3MFC_EXT_CLASS CHttpResponseHeader
  25. {
  26. public:
  27. //Constructors / Destructors
  28.   CHttpResponseHeader();
  29. //Methods
  30.   void    AddStatusCode(int nStatusCode);
  31.   void    AddStatus(LPCSTR pszStatusString);
  32.   void    AddContentLength(int nSize);
  33.   void    AddContentType(const CString& sMediaType);
  34.   void    AddKeepAlive();
  35.   void    AddDate(const SYSTEMTIME& st);
  36.   void    AddLastModified(const SYSTEMTIME& st);
  37.   void    AddWWWAuthenticateBasic(const CString& sRealm);
  38.   void    AddWWWAuthenticateNTLM(const CString& sMessage);
  39.   void    AddExpires(const SYSTEMTIME& st);
  40.   void    AddLocation(const CString& sLocation);
  41.   void    AddServer(const CString& sServer);
  42.   void    AddW3MfcAllowFields(BOOL bAllowDeleteRequest);
  43.   void    AddExtraHeaders(LPCSTR pszHeaders);
  44.   void    SetAddEntitySeparator(BOOL bSeparator);
  45.   CString DateToStr(const SYSTEMTIME& st);
  46. #ifdef W3MFC_SSL_SUPPORT
  47.   BOOL    Send(CHttpSocket& socket, DWORD dwTimeout, CSSL& ssl);
  48. #endif
  49.   BOOL    Send(CHttpSocket& socket, DWORD dwTimeout);
  50.   char*   GetData(DWORD& dwSize);
  51. protected:
  52.   CString m_sHeader;
  53.   BOOL    m_bEntitySeparator;
  54. };
  55. #endif //__HTTPRESPONSEHEADER_H__