Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过服务器向python脚本发送字符串_Python_Shell_Scripting - Fatal编程技术网

通过服务器向python脚本发送字符串

通过服务器向python脚本发送字符串,python,shell,scripting,Python,Shell,Scripting,我如何从android应用程序向pc上的python程序发送一个stringshell脚本文件名,并让python执行以该字符串命名的脚本 我已经完成了python脚本。。。doThis./openNetflix将运行./openNetflix脚本,正如您可能猜到的那样,它将打开Netflix 我如何配置python服务器来接收字符串并将其传递给我的doThisscriptNameString函数?我开始写一些关于这个案例的冗长评论,但当您接近注释的字符数限制时,我想最好将其转换为答案 完成此任

我如何从android应用程序向pc上的python程序发送一个stringshell脚本文件名,并让python执行以该字符串命名的脚本

我已经完成了python脚本。。。doThis./openNetflix将运行./openNetflix脚本,正如您可能猜到的那样,它将打开Netflix


我如何配置python服务器来接收字符串并将其传递给我的doThisscriptNameString函数?

我开始写一些关于这个案例的冗长评论,但当您接近注释的字符数限制时,我想最好将其转换为答案

完成此任务最简单的方法是使用许多优秀的python库之一来创建REST服务。我个人最喜欢的是,在瓶子中实现这类服务将非常简单:

from bottle import route, run, template

@route('/execute/<command>')
def execute(command):
    if command == "list_blogs":
        // Do something 1
    elif command == "format_c":
        // Do something 2

run(host='localhost', port=79897)

然后您还将这个特定客户机的salt和key存储在客户机代码中。然后,当客户机发出请求时,他将其密钥和校验和作为附加参数,校验和由命令生成的md5、客户机salt密钥和(例如)当前小时组成。然后,当您收到请求和所有3个变量时,您尝试使用相同的数据创建自己的校验和,以便为提供的客户机密钥选择salt并计算该salt的md5,当前时间和来自客户端的命令,如果它们匹配,那么您就知道请求是有效的。

最简单的方法是使用REST接口,因为它有现成的lib,例如,它是否需要是Python?您可以使用netcat周围的一行shell脚本来实现这一点……或者更简单地说,这正是telnet、rsh等已经在做的事情……另外,如果您计划设置一个接受任何字符串并执行它的服务器,您应该非常小心。有很多恶意的方式来解释这一点。e、 g.有人将rm-rf/发送到服务器。即使您的服务器位于安全/隔离的网络中,确保服务器只能做“已知的”/“良好的”事情仍然是一种良好的做法。例如,有一个允许其运行的命令列表。@abarnert-Yes!:我只是一个个人项目,我决定尽可能多地使用语言,只是为了学习。巨蟒就是其中之一。@Puciek对这个疯狂的快速回复投了赞成票,但我还不能。非常酷。正是我需要的。谢谢你,你这个十足的疯子!
salts["here_you_put_random_hash_as_key"] = "and_here_the_salt"