我想在网站上有一个“控制面板”,当按下一个按钮时,我希望它在服务器(我的电脑)上运行一个命令。该面板将运行我编写的不同python脚本(每个按钮一个脚本),我想在我的Mac,iPod touch和我的wii上运行面板。我看到的最好的方式是一个网站,因为他们都有浏览器。每当按下按钮时,是否有javascript或其他东西在我的计算机上运行命令?
编辑:我听说AJAX可能适用于基于服务器的事情,但我不知道该怎么做。是否有“系统”块或我可以使用的东西?答案 0 :(得分:0)
以下是三个选项:
答案 1 :(得分:0)
在客户端(浏览器),您可以使用最简单的方法来完成。只是一个HTML表单。 javascript会使验证更好,并进行ajax调用,因此页面不必刷新。但您主要关注的是在服务器上处理它。您可以使用您选择的语言接收表单请求。如果你已经在运行python,你可以写一个超快的cgi python脚本。查看python的cgi模块。你需要把它放到osx上的apache服务器上,如果那样你将托管它。 不幸的是,关于如何编写它的问题超出了简单答案的范围。但谷歌如何编写和html表单,或者看看也许jquery来构建一个可以轻松调用ajax调用的快速表单。 然后搜索如何使用python cgi模块并接收POST请求。
答案 2 :(得分:0)
Javascript基本上是用于在浏览器中工作(通常为最终用户呈现一些好看的东西)。你想要的(正如其他人已经说过的那样)是一种将HTML表单动作连接到web服务器“后端”上的动作的方法。这正是(正如RobG指出的那样)CGI的用途。一个非常受Apache用户欢迎的CGI的替代方案是mod_python - 区别在于“后端”操作是作为独立进程(CGI)运行还是作为Web服务器进程(mod_python)运行,但对于大多数基本应用程序而言,服务器端是脚本不需要关心。如果您在共享托管环境中,您可能没有选择 - 请询问您的系统管理员(或阅读您的托管服务文档),以了解在这种情况下如何最好地运行CGI脚本。
注意事项:
您可能需要相当提升的网络服务器管理员访问权限。专业知识,以便按照您的方式设置所有内容。您至少需要能够(在权限和技术理解的意义上)查看您的网络服务器日志,编辑您的网络服务器配置并退回(重新启动)您的http服务。
您希望完成的“后端”操作将使用网络服务器的权限/权限完成,这可能与您通常用于执行这些操作的用户帐户的权限/权限不同。有各种各样的方法(使用自定义守护进程和/或sudo操作),但你真的需要清楚地了解webserver sysadmin(如果web服务器暴露给Big Bad Internet)关于它将如何工作< em>在之前部署任何东西,否则你会冒黑风险(尤其是,如果你是菜鸟)使黑客能够利用你的“命令网关”破解网络服务器
当然,如果你只是在个人笔记本电脑上做这一切以获得乐趣(毕竟问题上有一个OSX标签),那么你是网络服务器系统管理员,而你'在学习沿途你需要知道的一切时,你可以反复自由地劈开并愉快地射击自己,只要你不在网络上就可以了。在这种情况下,您可能会发现this tutorial很有用。