我在HTML文件中有一个JS脚本,它收集用户提供的输入。使用输入的值,我形成一个字符串,并通过AJAX调用将其发送到后端Python脚本:
$.ajax({
type: "POST",
url: "/cgi-bin/backend.py",
}); data: { 'form_data' : datastring}
数据字符串的值如下:
age=9&country=US&buyer=Sample
我在FireBug中看到同样的POSTed:
form_data=age%3D9%26country%3DUS%26....
在我的Python后端代码中,我检查并获取CGI'form_data'变量值:
if self.cgi.has_key ("form_data"):
但令人惊讶的是,代码没有输入这个'if'代码?此外,数据字符串中的值如何更改为“age%3D9%26”?如果我将CGI变量拆分为'&'并通过'='解析分裂的值我将能够获得CGI名称值对吗?
答案 0 :(得分:0)
首先,您的发送数据已经过urlencoded,这就是它看起来那样的原因。
如果您在此问题上需要更多帮助,还需要发布您的python代码。除此之外,我建议你使用python web框架,如Flask或bottle,而不是使用cgi。