php - Python,如何接收ajax调用数据?

标签 php python json ajax cgi

我对 python 接收 ajax 数据感到很困惑......

我不想使用flask,因为我需要从php文件和使用80端口的我的网站接收数据。

我搜索了 google,发现我可以使用 cgi 来做到这一点,但我不确定这是否是正确的方法。

我使用了示例,我的 ajax 调用如下所示:

$('#clickme').click(function(){
    $.ajax({
        type: "POST",
        url: "brute.py",
        datatype : "json",
        data: { name: "nitin"}
      })
      .done(function(msg) {
           console.log(msg);
});
});

我的Python文件brute.py

import json
import sys
import cgi
import cgitb

sys.stdout.write("Content-Type: application/x-www-form-urlencoded")
sys.stdout.write("\n") 
sys.stdout.write("\n")
form = cgi.FieldStorage()
name = form.getvalue('name')
print(name)

我想接收数据并将其用于我的其他脚本行,例如:

url2 = "http://www.example.ee/admin/index.php?controller=AdminPdf&token=35b276c05aa6f5eb516737a8d565eb66&submitAction=generateInvoicePDF&id_order={}".format(name) // Like this, i know for sting i use %s

当我单击 php 文件中的按钮时,我会在控制台中获取 brute.py 的完整代码,当我尝试在终端上执行脚本时,会打印出来:

Content-Type: application/x-www-form-urlencoded

None

我想在终端上执行脚本并有一个循环等待按下按钮以接收数据

我的问题是,如何存档?

最佳答案

我认为重点是您没有意识到可以在另一个端口(例如8080)上使用flask或任何其他http服务器库。

所以你需要做的就是在python端启动一个http服务器,然后向它发送请求。

$('#clickme').click(function(){
    $.ajax({
        type: "POST",
        url: "127.0.0.1:8080/xxxx", //your python end http server's router.
        datatype : "json",
        data: { name: "nitin"}
      })
      .done(function(msg) {
           console.log(msg);
});
});

关于php - Python,如何接收ajax调用数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43674339/

相关文章:

php - 检查以验证序列号

python - Pandas:数据框与用于定义它的 numpy.array 之间的关系

python - 在 Windows 8.1 上安装 python 3.4 mechanize

ios - 无法在 WebView 中解析 JSON 数据

php - sql查询每次都失败

javascript - 通过 PHP 将 mySQL 数据拉入 Javascript 对象数组

python - 如何使用 SSH key 编写 Python Paramiko SFTP

json - 如何使用powershell中的if条件在json文件中写入值?

asp.net-mvc - 在 ASP.NET MVC 中以相同的 ActionResult 返回 JSON * 和 * HTML 的最佳方法是什么

php - set_exception_handler()期望参数(exception_handler)是有效的回调