客户端代码通过ajax请求向python cgi脚本提交一个对象(在POST请求体中)或查询字符串(如果使用GET方法)。请注意,对象/查询字符串参数来自
<form> or <isindex>.
如何使用标准库模块(例如cgi)从服务器端python脚本中检索这些参数?
非常感谢
修改
@codeape :谢谢,但这不仅适用于提交的表单吗?在我的例子中,没有提交任何表单,只是一个异步请求。
如果没有提交表单,使用你的脚本len(f.keys())返回0!我可以重新提交请求作为表单提交,但有更好的方法吗?
答案 0 :(得分:5)
您使用cgi.FieldStorage类。示例CGI脚本:
#! /usr/bin/python
import cgi
from os import environ
import cgitb
cgitb.enable()
print "Content-type: text/plain"
print
print "REQUEST_METHOD:", environ["REQUEST_METHOD"]
print "Values:"
f = cgi.FieldStorage()
for k in f.keys():
print "%s: %s" % (k, f.getfirst(k))
答案 1 :(得分:0)
答案 2 :(得分:0)
@codeape , @bruno desthuilliers :
实际上,cgi.FieldStorage()检索参数。我之前得到的输出显然是由于我在参数的主体中将参数作为字符串(JSON.stringify()对象)传递 - 而不是作为键值对。 感谢