使用CGI Python脚本刷新网页

时间:2016-05-23 20:27:45

标签: python raspberry-pi cgi refresh reload

我有一个非常简单的网页,我用它来在Raspberry Pi上旋转步进电机。我的html文件是这样的:

<html>
<head>
<script Language="Javascript">

function ccw()
{
  document.location="cgi-bin/rotate_45_ccw.py";
}

function cw()
{
  document.location="cgi-bin/rotate_45_cw.py";
}

</script>
</head>

<body>
  <div style="text-align:center">
    <h1>Raspberry Pi GPIO</h1>
<br>
  <button type="button", id="ccw", onclick="ccw()", value="value CCW">Rotate CCW</button>
  <button type="button", id="cw", onclick="cw()", value="value CW">Rotate CW</button>
<br>
  </div>

</body>
</html>

我想要做的是在执行任一脚本之后,刷新页面(以便用户可以再次点击任一按钮)。我猜,这种愚蠢的方式是Python脚本输出上面的html代码。有更聪明/更简单的方法吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

经过大量的搜索,我终于做对了!因此,为了重定向到主页,我必须在python3脚本的末尾添加以下print语句:

print ("Content-type: text/html\n\n")
print ("<html><body>\n")
print ("<meta http-equiv=\"refresh\" content=\"0; url = http://192.168.1.109\" />")
print ("</body></html>")

答案 1 :(得分:0)

不,不要简单地返回页面 - 按下例如f5-reload将再次执行操作。从python脚本返回带有控制页面URL的303 See Other。所以你总是拥有相同的“登陆页面”,而不必两次编写同样的东西。理想情况下,旋转动作应该是http POST(它们没有副作用),但这是一个不同的主题。