如何在Python CGI脚本中读取所有HTTP标头?
可以使用python在apacheCGI脚本中获取自定义请求标头的值。解决方法与此类似。
Apache的mod_cgi将为收到的每个HTTP请求标头设置环境变量,以这种方式设置的变量都将带有HTTP_前缀,因此例如x-client-version:1.2.3将作为变量HTTP_X_CLIENT_VERSION提供。
因此,要读取上述自定义标头,只需调用os.environ[“HTTP_X_CLIENT_VERSION”]。
以下脚本将打印所有HTTP_*标头和值-
#!/usr/bin/env python import os print "Content-Type: text/html" print "Cache-Control: no-cache" print print "<html><body>" for headername, headervalue in os.environ.iteritems(): if headername.startswith("HTTP_"): print "<p>{0} = {1}</p>".format(headername, headervalue) print "</html></body>"