从Tomcat 8.5启动Python脚本

时间:2018-10-19 11:47:37

标签: javascript python jquery tomcat

我建立了一个简单的网页,只需单击一个按钮即可运行一个简单的python脚本。不幸的是,Tomcat不会执行该python脚本。

我已经将conf / web.xml中的servlet映射标记添加到WEB-INF / web.xml中(CGI Servlet标记) 它显示我文件的内容,而不是执行python脚本。

这是目录和文件:

bash-3.2$ ls -ltr
total 3598
-rw-r----- 1 orte123i dbte123i 3579238 Mar 26  2018 jump.jpg
-rw-r----- 1 orte123i dbte123i    1615 Aug  6 10:49 theme.css
drwxr-x--- 2 orte123i dbte123i       4 Oct 18 10:06 META-INF
drwxr-x--- 2 orte123i dbte123i       3 Oct 18 10:06 cgi-bin
drwxr-x--- 2 orte123i dbte123i       7 Oct 19 06:35 js
-rw-r----- 1 orte123i dbte123i    1442 Oct 19 06:35 index.html

用于调用该脚本的JS脚本是

bash-3.2$ cat custom.js
$(document).ready(function(){
$(sub).click(function(ev){
alert("Button Clicked!!")
    ev.preventDefault(); // Stop the form from redirecting the page.
    $.ajax({
            type:'POST',
            url:'cgi-bin/test.py', 
            success:function (res) {
                 $('#output').html(res);
            }
    });

});
});

Python脚本只有一条打印语句:

bash-3.2$ cat test.py
#!/usr/local/bin/python3.6
from threading import Thread, Event
import time
import threading, paramiko
import sys, os
import cgi, cgitb


print("Content-Type: text/html\n\n")
print("hello")
print("hello")

这是我的网页div标签上的结果。

#!/usr/local/bin/python3.6from threading import Thread, Event import time import threading, paramiko import sys, os import cgi, cgitb print("Content-Type: text/html\n\n") print("hello") print("hello") 

代码未执行,仅显示文件的内容。

1 个答案:

答案 0 :(得分:0)

为什么在Tomcat上使用Python? Tomcat用于提供基于Java的网页。为了提供Python服务,您应该使用Python Flask库(也可以是Tornado,Django,Pyramid)。甚至可以使用以上内容轻松托管JavaScript静态文件。