在我的家庭服务器管理应用程序中,我添加了一个通过应用程序远程唤醒 PC 的功能。执行此操作的 PHP 脚本完美运行,但我希望能够通过 AJAX 调用来执行此操作。
调用是这样发生的:
用户单击 PHP 生成的链接:
<a href=\"javascript:wake('$hostname')\">Wake</a>
函数(jQuery)在哪里:
function wake(hostname) {
$(document).ready(function()
{
alert('function works');
$.post('ajax/wake.php',{host: hostname});
alert('Command executed');
});
}
两个警报都会显示,这意味着 AJAX 调用已执行。php 脚本如下所示:
<?php
include_once("../classes/BLClient.php");
$blClient = new BLClient(true);
$hostname = $_GET["host"];
$client = $blClient->getClientByHostname($hostname);
$mac = $client->getMac();
echo `sudo etherwake -i eth1 $mac`;
?>
但是,我的电脑没有被唤醒。如果我直接浏览到脚本,它确实有效......