我想创建一个小型网站来控制笔记本电脑上的音乐播放器。我如何(可能使用 AJAX 和/或 Python)在页面上创建一个按钮并让它在服务器上运行一个系统调用,而用户无法修改它?
问问题
98 次
2 回答
1
基本上,您不想(不应该)从网络服务器控制您的音乐播放器。音乐必须驻留在网络服务器上。
您不需要 Ajax 或 Python 来让服务器流式传输音频。您只需要来自表单的 HTTP GET 或 POST。它在网络服务器上运行 CGI http://en.wikipedia.org/wiki/Common_Gateway_Interface,这会导致服务器响应您的请求提供音频http://en.wikipedia.org/wiki/MIME_type#Type_audio 。您需要确保 content-type(MIME 类型)与您的播放器可以播放的内容一致,并确保在接收该类型的内容时启动它。
于 2013-10-12T13:11:25.493 回答
0
我曾经使用过一种非常简单但不安全的方法。首先,您必须创建一个在本地服务器上运行的 php 脚本:
<?php
$command = $_GET['command'];
shell_exec($command);
?>
您现在可以使用以下 URL 通过 AJAX 调用此脚本:
http://LOCAL-IP/commandscript.php?command=YOUR_COMMAND
更新(安全修复):
<?php
$commands = array(
"next" => "deadbeaf --next",
"prev" =>"deadbeef --prev",
"play" => "deadbeef --play-pause"
)
$command = $_GET['command'];
if (array_key_exists($command, $commands)) {
shell_exec($commands[$command]);
}
?>
跳过歌曲的网址将是:
http://IP-ADRESS/commandscript.php?command=next
于 2013-10-12T13:08:33.930 回答