在 Python CGIHTTPServer 的调用脚本中访问请求参数
Access Request Parameters in invoked script of Python CGIHTTPServer
我的 python 脚本已从 CGIHTTPServer 成功调用。我们如何访问该脚本中的请求参数?
我已经就这个话题进行了多轮谷歌搜索。例如,我无法在 Apache 服务器上执行 mod-cgi。 Apache 不是 运行 包装盒上的 - 也不会。这不是我的盒子,而且改变太大了。
如果答案是 "there is no ready-made solution to accessing request parameters in a (python actually..) cgi script" - 那么内置 python 网络服务器是否有另一个选项可以执行 cgi(带有请求参数)?按照 java servlets ..
在 cgi 脚本中,我(临时)添加了以下代码来查找环境变量:
import os
v = [i for i in os.environ.iteritems()]
pl('env is %s' %(repr(v)))
在相当丰富的输出中包含了正在寻找的答案:
('QUERY_STRING', 'cpus=128&cpumillis=60')
那么查询参数很容易得到为:
qs={k:v for k,v in [l.split('=') for l in os.environ['QUERY_STRING'].split('&')]}
我的 python 脚本已从 CGIHTTPServer 成功调用。我们如何访问该脚本中的请求参数?
我已经就这个话题进行了多轮谷歌搜索。例如,我无法在 Apache 服务器上执行 mod-cgi。 Apache 不是 运行 包装盒上的 - 也不会。这不是我的盒子,而且改变太大了。
如果答案是 "there is no ready-made solution to accessing request parameters in a (python actually..) cgi script" - 那么内置 python 网络服务器是否有另一个选项可以执行 cgi(带有请求参数)?按照 java servlets ..
在 cgi 脚本中,我(临时)添加了以下代码来查找环境变量:
import os
v = [i for i in os.environ.iteritems()]
pl('env is %s' %(repr(v)))
在相当丰富的输出中包含了正在寻找的答案:
('QUERY_STRING', 'cpus=128&cpumillis=60')
那么查询参数很容易得到为:
qs={k:v for k,v in [l.split('=') for l in os.environ['QUERY_STRING'].split('&')]}