如何接受HTTP Post并使用参数调用命令行?

时间:2013-02-17 05:26:55

标签: bash http rest

我想从命令行(bash)通过另一台计算机的http请求调用VLC。在这种情况下,一台计算机将充当服务器,并将根据它接收的http参数调用VLC的不同选项,而另一台计算机将只是充当客户端,因为它向服务器发送不同的http请求,其上有VLC。

这可以作为一般性问题提出。在服务器上接受和http请求,然后在bash上调用CLI。

1 个答案:

答案 0 :(得分:1)

最简单的方法是在Apache或任何其他Web服务器上设置CGI脚本,并使用GET请求。

如果某些内容尝试获取http://yourhost/cgi-bin/yourscript?doStuff,则会调用您的脚本,$QUERY_STRING将包含doStuff

#!/bin/bash
echo "Content-type: text/plain"
echo

if [[ $QUERY_STRING == doStuff ]]
then
    yourcommand --here
    echo "Thanks, your stuff is done. "
else
    echo "Unknown stuff to do. Here are my variables:"
    set
fi

请注意您的HTTP服务器运行您的脚本的用户。