从ASP.Net远程运行Python脚本
我在一个Linux服务器上有一个Python脚本,我可以通过SSH连接到这个服务器。我想在这个Linux服务器上运行这个脚本(并且把用户输入的参数传给它),然后把输出结果显示在一个运行在IIS上的ASP.net网页上。我该怎么做呢?
如果我使用WAMP服务器,这样做会更简单吗?
补充说明:这两个服务器在同一个内部网络里。
1 个回答
0
最好的方法就是让两个系统之间的联系尽量少。如果你能找到一个双方都能接受的沟通方式(比如用asp和python交流),这会大大减少麻烦。
假设你选择了XML作为沟通格式。
你可以把python脚本设置成一个WSGI应用,使用cherrypy或apache等工具。这个脚本会把它的响应格式化成XML,然后通过WSGI把这个XML通过HTTP发送出去。
在ASP.NET那边,每当你想“运行这个脚本”时,只需要用WebRequest类去请求那个URL,然后用LINQ-to-XML来解析结果(顺便说一下,这个技术真的很酷)。
这就是关键所在:如果将来ASP.NET或python的实现有了变化,你就不需要重新编写或调整另一个部分。以后如果你发现ASP.NET应用和某个桌面应用也需要这样做,你已经有了一个标准的协议,实施起来应该会很简单,并且有很好的支持。