澄清一下: 我通过 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/