2009-06-23 16 views
6

No pude encontrar python equivalente a PHP $ _SERVER.

¿Hay alguno? O, ¿cuáles son los métodos para brindar resultados equivalentes?

Gracias de antemano.

+3

Hay muchas diferencias entre Python y PHP. Python es solo un lenguaje de programación, mientras que PHP es más como un framework web, ya que tiene primitivos para cosas relacionadas con la web. Como $ _SERVER, encabezado, setcookie. Estas son cosas que no están en el núcleo de Python, sino en módulos específicos de dominio. PHP fue creado para ser un lenguaje de la web, por eso tiene muchas cosas útiles para la programación web. –

+1

De todos modos, PHP es idiosincrásico, ya que puede acceder al superglobal $ _SERVER incluso en modo CLI. También se llena en este escenario. –

+1

Bueno ... Las cosas están cambiando. Python está haciendo su camino. Entonces, vale la pena aprender y construir algunos sitios usando Python. – fireball003

Respuesta

11

Usando mod_wsgi, que lo recomiendo sobre mod_python (larga historia, pero confía en mí) ... Su solicitud se pasa a un entorno variables tales como:

def application(environ, start_response): 
    ... 

y el medio ambiente contiene elementos típicos desde $ _SERVER en PHP

... 
environ['REQUEST_URI']; 
... 

Y así sucesivamente.

http://www.modwsgi.org/

buena suerte

REVISIÓN La respuesta correcta real es usar algo como Frasco

+0

Muchas gracias. Que hará :) – fireball003

1

Usted no lo expresa de manera explícita, pero supongo que está utilizando mod_python? Si es así, (y si no desea usar mod_wsgi en su lugar, como se sugirió anteriormente) eche un vistazo a la documentación del request object. Contiene la mayoría de los atributos que encontrará en $_SERVER.
Un ejemplo, para obtener la URI completa de la solicitud, que haría esto:

def yourHandler(req): 
    querystring=req.parsed_uri[apache.URI_QUERY] 

El atributo de cadena de consulta contendrá ahora cadena de consulta de la solicitud, es decir, la parte después de que el '?'. (Entonces, para http://www.example.com/index?this=test, querystring sería this=test)

Cuestiones relacionadas