【发布时间】:2015-08-28 00:02:22
【问题描述】:
我正在尝试使用 AJAX 使用从 Python 脚本返回的数据更新表。当我使用 AJAX 请求 Python 脚本时,返回的文本是整个 Python 脚本文件,而不仅仅是 print 命令中的内容。
我的 AJAX 文件:
...standard loadXMLDoc function with callback from W3C AJAX tutorial...
function doNow()
{
loadXMLDoc("cgi-bin/get.py",function()
{
if (request.readyState==4 && request.status==200)
{
document.getElementById("active_items").innerHTML=request.responseText;
}
});
}
window.onload=doNow();
为简单起见,我使用的 python 文件很简单:
print("<div>something</div>")
或
import cgi
import cgitb
cgitb.enable(display=0, logdir="/path/to/logdir")
if __name__ == "__main__":
print("Content-type:text/html\n\n")
print("<div>something</div>")
当我加载页面时,<div id="active_items"> 的内容是:
print("
something
")
我已经:
- 使用
chmod 755 get.py将get.py文件设置为可执行文件 - 已验证在我的服务器上启用了 CGI 权限(即其他 .cgi 脚本有效)
- 已验证我的 AJAX 脚本是否适用于其他静态文件,例如
.txt文件
我确定我遗漏了一些明显的东西,但我希望得到一些帮助!
【问题讨论】: