我有一个Raspberry pi 3.并安装了Web服务器。我有一个文件http1.py,监听端口432,并通过URL传递变量“a”,它将通过GPIO打开和关闭指示灯:“http://192.168.0.5:432/turn?a=1” 我还在端口80的路由器上打开了IP转发,有用。 在我的覆盆子PI的服务器我有一个使用Ajax来访问http://192.168.0.5:432/turn?a=1 index.html文件:现在远程访问GPIO
function ras(str) {
var url = "HTTP://192.168.0.17:432/turn?a="+str;
xmlHttp = GetXmlHttpObject(stateChanged);
xmlHttp.open("GET", url, true);
xmlHttp.send(null); .....
}
function stateChanged() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
Blah, blah ...
,:在网络上,它工作正常(GPIO打开和关闭),但与外部ip地址75.129 .- .-:80,我看到index.html但是当我访问激活Ajax的链接时,没有任何反应。
我在做什么错?或者,有没有更好的方式通过我的网络访问GPIO?
你的Python脚本在哪里? – litelite
它位于/ var/www/html下。与index.html相同的目录,当我从此位置运行http1.py命令时,它工作正常 –
您的JavaScript代码在您的浏览器中运行。它无法访问服务的本地网络,除非您的浏览器位于服务器的本地网络上。 – spectras