【问题标题】:Executing a Python file with Ajax使用 Ajax 执行 Python 文件
【发布时间】:2016-10-28 18:00:18
【问题描述】:

我正在尝试在页面加载时运行 python 脚本。 python 脚本将保存一个包含一些日志信息的 log.text 文件。在做了一些研究后,我想出了:

    <script>
    window.onload = function () {
        $.ajax({
            type: 'POST',
            url: "img/test.py",
            success: function () {
                alert("working")
            },
            error: function () {
                alert("Not Working")
            }
        });
    };
</script>

这很有效,每次页面加载它都会提醒我它是成功的。这里是 test.py:

#!/usr/local/bin/env python

try:
    txt = open(r'log.txt', "wb")
    txt.write("Success")
    txt.close()
except Exception,e:
    txt = open(r'log.txt', "wb")
    txt.write(e)
    txt.close()

但这就是问题所在。该文件未创建,我不知道为什么。

更多信息: 我正在使用 godaddy 作为托管服务。我的脚本是用python2.6编写的。 当我 ssh 进入并使用时:

$ python path_to_file/test.py

它在当前 cd 位置创建文件。所以服务器可以用python运行文件但是当我使用时:

$ cd path_to_file
$ ./test.py

我明白了:

-bash: ./test.py: Permission denied

这是问题还是正常?其他一切正常我似乎只是缺少这个难题的一部分。我的shebang陈述正确吗?为什么我的进程没有生成 log.txt 文件?

【问题讨论】:

  • 你不是只是通过ajax读取python脚本的内容吗?如果您将success: function () { alert("working") } 更改为success: function (data) { alert(data) } 并查看python 代码,则它没有被执行。

标签: python html ajax


【解决方案1】:

您是否在该文件上设置了执行标志?

  chmod +x test.py  

应该……

【讨论】:

    猜你喜欢
    • 2014-08-15
    • 2017-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多