0

我想创建一个小型网站来控制笔记本电脑上的音乐播放器。我如何(可能使用 AJAX 和/或 Python)在页面上创建一个按钮并让它在服务器上运行一个系统调用,而用户无法修改它?

4

2 回答 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 回答