作为我大学三年级项目的一部分,我正在为亚马逊消防电视操作系统创建一个HTML5 Web应用程序。此Web应用程序应与另一个远程服务器通信,以使用有关用户当前正在观看的内容的信息更新另一个客户端。我在localhost上使用socket.io成功实现了这个通信,但不幸的是android OS不支持web套接字,所以我不能在fire tv app本身内使用socket.io。
为了解决这个问题,我想在我的服务器上有一个php文件,当请求页面的相关GET请求时,它会发出套接字请求。该文件的PHP代码如下:
if(isset($_GET['title'])){
echo "
socket.emit('vidStart', '" . $_GET['title'] . "');
";
}
echo "</script>";
正如您所看到的,当使用title参数请求页面时,所有代码都会发出。
现在,当我自己进入网络浏览器并输入网址,发出成功并且我的服务器收到消息时,此功能正常。
但是,我正在尝试使用javascript在服务器上远程执行此操作,以便在我的fire os应用程序中使用socket.io。
我目前在我的应用中拥有的代码如下:
$.ajax({
'type': 'GET',
'url': 'http://138.68.175.172:81',
'data': 'title=example',
success: function(response){
console.log(response);
}
});
这会返回正确的响应,但似乎并没有实际执行php代码并通过我的服务器上的socket io发出。我的问题是,这可以通过javascript和php做到吗?我已经尝试过查看XMLWebRequest,但似乎做了同样的事情,并回复了网页。
如果这不可能,是否有其他方法可以向远程服务器发送信息,并让它执行命令(在这种情况下发出一个socket.io消息)?