Return Type | Function name | Arguments |
---|---|---|
void | hdsPage::Head | (hzHttpEvent*,) |
Declared in file: hzDissemino.h
Defined in file : hdsGenerate.cpp
Function Logic:
Function body:
void hdsPage::Head (hzHttpEvent* pE) { _hzfunc("hdsPage::Head") ; ifstream is ; hzXDate d ; hzChain Z ; const char* pEnd ; hzMimetype type ; HttpRC hrc ; hzEcode rc ; pEnd = strrchr(*m_Url, CHAR_PERIOD) ; if (pEnd) type = Filename2Mimetype(pEnd) ; else type = HMTYPE_TXT_HTML ; Z.Clear() ; switch (hrc) { case HTTPMSG_OK: Z << "HTTP/1.1 200 OK\r\n" ; break ; case HTTPMSG_NOTFOUND: Z << "HTTP/1.1 404 Not found\r\n" ; break ; default: Z.Printf("HTTP/1.1 %03d\r\n", hrc) ; } ; d.SysDateTime() ; Z.Printf("Date: %s\r\n", d.Txt(FMT_DT_INET)) ; Z << "Server: HTTP/1.0 (HadronZoo, Linux)\r\n" ; Z.Printf("Last-Modified: %s\r\n", d.Txt(FMT_DT_INET)) ; d.altdate(SECOND, 1000); Z.Printf("Expires: %s\r\n", d.Txt(FMT_DT_INET)) ; Z << "Accept-Ranges: bytes\r\n" ; if (hrc == HTTPMSG_OK) Z.Printf("Content-Length: 0\r\n") ; Z << "Content-Type: " << Mimetype2Txt(type) << "\n\n" ; pE->SendRawChain(HTTPMSG_OK, HMTYPE_TXT_HTML, Z, 0,false) ; }