TFCweb
1.0.4 $Rev: 483 $
TFC Primavera 2012: Nucli d'un servidor web
|
Interfície cap a un script CGI. Més...
#include <CGI.h>
Tipus Públics | |
typedef boost::asio::ip::tcp::socket | socket_tcp |
typedef std::pair< std::string, std::string > | tipus_capsalera |
typedef std::vector < tipus_capsalera > | tipus_capsaleres |
typedef std::shared_ptr < Transformacio > | transformacio_ptr |
Mètodes públics | |
ProgramaCGI (const PeticioHTTP &peticio, const boost::filesystem::path &arrel_servidor) throw (ErrorRutaInexistent) | |
ProgramaCGI (const ProgramaCGI &c) | |
virtual tipus_capsaleres | capsaleres () const |
Llista de capçaleres específiques del cos a afegir a la resposta. | |
virtual void | envia (boost::asio::ip::tcp::socket &socket) const throw (std::runtime_error) |
Envia el cos del missatge. | |
virtual void | envia_eom (socket_tcp &socket) const throw (ErrorEscrivintEnSocket) |
Envia el final del missatge. | |
virtual std::string | html () const |
Contingut. | |
ProgramaCGI & | operator= (const ProgramaCGI &c) |
const PeticioHTTP & | peticio () const |
virtual bool | pot_generar_capsaleres () const |
Indica si el contingut pot generar capçaleres HTTP. |
Mètodes Protegits | |
bool | chunked_ok () const |
Comprova si el client accepta chunked. | |
const std::string & | content_encoding () const |
Content-Encoding acceptat per el client | |
bool | deflate_ok () const |
Comprova si el client accepta deflate. | |
virtual size_t | envia (socket_tcp &socket, const std::string &buffer) const throw (ErrorEscrivintEnSocket) |
Envia una cadena sencera. | |
size_t | envia_literal (socket_tcp &socket, const std::string &buffer) const throw (ErrorEscrivintEnSocket) |
Envia una cadena sense aplicar la codificació | |
const std::string & | transfer_encoding () const |
Transfer-Endocing acceptat per el client | |
transformacio_ptr | transformacio () const |
Genera una transformació acceptable per el client. |
Tipus Privats | |
enum | { MIDA_BUFFER = 8<<10 } |
Atributs Privats | |
boost::filesystem::path | arrel_servidor_ |
boost::filesystem::path | ruta_ |
|
inherited |
Definició a la línia 86 del fitxer CosResposta.h.
|
inherited |
Definició a la línia 83 del fitxer CosResposta.h.
|
inherited |
Definició a la línia 84 del fitxer CosResposta.h.
|
inherited |
Definició a la línia 85 del fitxer CosResposta.h.
|
private |
|
explicit |
peticio.ruta()
.ruta() es correspon amb un fitxer llegible i executable Definició a la línia 66 del fitxer CGI.cc.
Referències tfc::portabilitat::permis_execucio().
|
inline |
|
virtualinherited |
Llista de capçaleres específiques del cos a afegir a la resposta.
Per defecte, retorna les capçaleres relatives a les transformacions aplicables.
Reimplementat a CosPaginaError, Recurs i AutoIndex.
Definició a la línia 78 del fitxer CosResposta.cc.
|
inlineprotectedinherited |
Comprova si el client accepta chunked.
Definició a la línia 185 del fitxer CosResposta.h.
Referències CosResposta::chunked_ok_.
|
inlineprotectedinherited |
Content-Encoding
acceptat per el client
Definició a la línia 193 del fitxer CosResposta.h.
Referències CosResposta::ce_.
|
inlineprotectedinherited |
Comprova si el client accepta deflate.
Definició a la línia 182 del fitxer CosResposta.h.
Referències CosResposta::deflate_ok_.
|
virtual |
Envia el cos del missatge.
Reimplementat de RecursDinamic.
Definició a la línia 84 del fitxer CGI.cc.
Referències tfc::commit(), tfc::log(), tfc::NivellError, tfc::NomTipusPeticioHTTP::nom() i tfc::NomTipusPeticioHTTP::tipus().
|
protectedvirtualinherited |
Envia una cadena sencera.
socket | Socket on escriure |
buffer | Cadena a escriure |
ErrorEscrivintEnSocket | si falla l'enviament de dades |
Definició a la línia 39 del fitxer CosResposta.cc.
|
virtualinherited |
Envia el final del missatge.
Definició a la línia 70 del fitxer CosResposta.cc.
|
protectedinherited |
Envia una cadena sense aplicar la codificació
Definició a la línia 54 del fitxer CosResposta.cc.
|
inlinevirtual |
Contingut.
Implementa RecursDinamic.
Definició a la línia 68 del fitxer CGI.h.
Referències FITXER_I_LINIA_.
|
inline |
Definició a la línia 61 del fitxer CGI.h.
Referències ProgramaCGI::arrel_servidor_ i ProgramaCGI::ruta_.
|
inlineinherited |
Definició a la línia 160 del fitxer CosResposta.h.
Referències CosResposta::peticio_.
|
inlinevirtual |
Indica si el contingut pot generar capçaleres HTTP.
Per a alguns tipus de recursos dinàmics, com ara scripts, és dessitjable poder modificar les capçaleres.
Reimplementat de CosResposta.
|
inlineprotectedinherited |
Transfer-Endocing
acceptat per el client
Definició a la línia 196 del fitxer CosResposta.h.
Referències CosResposta::te_.
|
inlineprotectedinherited |
Genera una transformació acceptable per el client.
Definició a la línia 190 del fitxer CosResposta.h.
Referències CosResposta::trans_.
|
private |
Definició a la línia 76 del fitxer CGI.h.
Referenciat a ProgramaCGI::operator=().
|
private |
Definició a la línia 76 del fitxer CGI.h.
Referenciat a ProgramaCGI::operator=().