python - 如何从 Javascript(jquery/ajax) 调用 Python 脚本中的特定函数/方法

标签 python ajax function

澄清一下: 我通过 Apache Web 服务器将其作为 cgi 运行。那不是问题 我的问题是关于在我通过 ajax 请求调用 Python 脚本时指定运行哪个函数的方法。

我读了一篇教程,说要将我想调用的函数名作为 var 传递。我做到了。 在 Python 中,我尝试了

这是我的ajax函数

 $(document).ready(function() {
    $.ajax({
       url: "monStat.py",
       type: "post",
       data: {'callFunc':'isRunning'},
       success: function(response){
           $('#blurg').html(response).fadeIn(1500);
       }
    });
 });

这是 Python

 def main():
      if callFunc:
           funcResp = isRunning()
      else:
           print("No function passed")

 def isRunning( process_name ):
    ''' the content ''' 

最佳答案

您需要使您的脚本支持网络。我没有使用过 CGI,所以这里有一个 Flask 的例子:

from flask import Flask, request

app = Flask(__name__)

@app.route('/is_running', methods=['POST'])
def isRunning():
    process_name = request.values.get('name', None)

    ''' the content '''

if __name__ == '__main__':
    app.run(host='127.0.0.1', port=5000)

现在,您可以向 /is_running 发送请求:

$.ajax({
   url: "/is_running",
   type: "post",
   data: {'name': 'ls'},
   success: function(response){
       $('#blurg').html(response).fadeIn(1500);
   }
});

关于python - 如何从 Javascript(jquery/ajax) 调用 Python 脚本中的特定函数/方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13808187/

相关文章:

python - 如何为每个配置文件配置 PIP 以使用代理(带身份验证)?

python - 为什么QWidget在继承时表现不同

python - 字符串变量作为pyplot中的 latex

java - 我如何使用一个参数作为map进行ajax调用,并在java服务器端将其映射到hashmap

jquery - knockout 帖子 JSON 表单数据帖子 null

javascript - 普通 JavaScript 版本的 jQuery .click

javascript - 如何在不使用原型(prototype)的情况下链接函数?

python - 子类装饰方法的类型不兼容 - python

javascript - 使用ajax发送数据,然后发送电子邮件

jquery - TypeError: f[s] 不是 jquery 表单提交的函数