1

我在 HTML 文件中有一个 JS 脚本,它收集用户提供的输入。使用输入的值,我形成一个字符串并通过 AJAX 调用将其发送到后端 Python 脚本:

$.ajax({
                type: "POST",
                url:  "/cgi-bin/backend.py",
  });              data: { 'form_data' : datastring}

数据字符串的值如下:

age=9&country=US&buyer=Sample

我在 FireBug 中看到发布的内容与以下内容相同:

form_data=age%3D9%26country%3DUS%26....

在我的 Python 后端代码中,我有一个检查来验证并获取 CGI 'form_data' 变量值:

        if self.cgi.has_key ("form_data"):

但令人惊讶的是,代码没有输入这个“if”代码?此外,数据字符串中的值如何更改为“age%3D9%26”?如果我用 '&' 拆分 CGI 变量并用 '=' 解析拆分后的值,我能得到 CGI 名称值对吗?

4

1 回答 1

0

首先,您发送的数据正在被 urlencoded 编码,这就是它看起来如此的原因。

如果您在这个问题上需要更多帮助,您还需要发布您的 python 代码。除此之外,我建议您使用 Python Web 框架,例如 Flask 或 Bottle,而不是使用 cgi。

于 2012-07-30T13:24:31.453 回答