【问题标题】:Python Backend unable to get AJAX POST dataPython后端无法获取AJAX POST数据
【发布时间】:2012-07-30 21:24:31
【问题描述】:

我在 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 名称值对吗?

【问题讨论】:

    标签: python ajax


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2020-09-26
      • 2016-10-21
      • 1970-01-01
      • 2017-04-23
      • 1970-01-01
      • 2015-10-22
      • 2013-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多