我想要的是运行python脚本只需单击html页面中的按钮并在我的页面上显示python代码结果。
因为它只是一个小项目,所以即使我知道它会起作用,我也不想过度学习Django或其他网页框架。
我进行了一些搜索,ajax对我来说似乎是正确的解决方案,但我不知道如何通过ajax执行python代码。我知道我可以使用以下代码通过ajax获取一些字符串:
function loadXMLDoc()
{
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","test1.txt",true);
xmlhttp.send();
}
提前感谢任何可以提供帮助的人。
答案 0 :(得分:1)
要扩展@ Liongold的评论,完整的工作流程如下:
或者:
OR
答案 1 :(得分:0)
我遇到了类似的问题,经过几个小时的搜索,我就是这样解决的。假设html文件和python文件是同一个文件夹。
<script>
function runScript() {
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState === 4) {
if (request.status === 200) {
alert('Successful .... ' + request.responseText);
} else {
alert('Something went wrong, status was ' + request.status);
}
}
};
request.open('POST', 'test.py', true);
request.send(null);
return false;
};
document.getElementById('script-button').onclick = runScript;
</script>
&#13;
This goes to your html file
-----------------------------
<button type="button" id="script-button">
add this line at the top of your python file
---------------------------------------------
test.py
------------
#!C:\Python34\python.exe -u
print("Testing 123")
add this directive to httpd.conf (Apache)
-----------------------------------------
# "C:/xampp/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "C:/xampp/<path to your project on the web server>">
AllowOverride All
Options Indexes FollowSymLinks Includes ExecCGI
AddHandler cgi-script .py .pyc
Order allow,deny
Allow from all
Require all granted
</Directory>
&#13;