python之js/url/python互动

## 前端页面
<script>
function run(sCmd,arg)
{
	var baseUrl = "http://192.168.2.250:50000/";
	var cmd = baseUrl + sCmd + "++" + arg + "++null";
	document.location = cmd;
}
</script>


<a href='javascript:run("startMind","\\\\192.168.4.62\\home\\_ui.xmind")' class="no edit">[+]</a></span>


## 中间服务

import os,sys,platform,re,shutil
import BaseHTTPServer
from SocketServer import ThreadingMixIn
import threading
import urllib, urllib2
import time,socket
try:
  from cStringIO import StringIO
except ImportError:
  from StringIO import StringIO

###################################################################################################
#   Global Varible
###################################################################################################
encoding = 'utf-8'
BUFSIZE = 1024

###################################################################################################
#   Define the Simple the Http Request
#   1. send the request to client.
###################################################################################################
class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
  #[GET]
  def do_GET(self):
    f = StringIO()
    print "==>%s" % (self.path[1:])
    sPath = self.path[1:]
    cmdList = sPath.split("++")
    cmdList = cmdList[0:-1]
    for x in cmdList:
		print "list==>%s" % (x)
    rCmd = ""
    cmdLen = len(cmdList)
    rCmd = cmdList[0]
    for i in range(1,cmdLen):
    	rCmd = "%s %s" % (rCmd,cmdList[i])
    print "OK-->%s" % (rCmd)
    okCmd = '%s && echo   000000 && pwd' % (rCmd)
    print okCmd
    pFp = os.popen(okCmd)
    ret = pFp.read()
    pFp.close()
    f.write("<body><script>location.href=document.referrer;</script></body>")
    length = f.tell()
    f.seek(0)
    self.response(length)
    if f:
      shutil.copyfileobj(f, self.wfile)
      f.close()
  #[Response]
  def response(self,length):
      self.send_response(200)
      self.send_header("Content-type", "text/html")
      self.send_header("Content-Length", str(length))
      self.end_headers()

###################################################################################################
#   Define the Simple the Http Server With Multi Thread Server
###################################################################################################
class ThreadingServer(ThreadingMixIn, BaseHTTPServer.HTTPServer):
  pass

###################################################################################################
#   Main Control Service.
###################################################################################################
if __name__ == '__main__':
    if len(sys.argv) < 2:
        print "-----------------------------------------------"
        print "Usage: miniControl.py 50000"
        print "-----------------------------------------------"
    else:
        serveraddr = ('',int(sys.argv[1]))
        #[Http Server]
        print "Start Http Server(%s)" % (int(sys.argv[1]))
        srvr = ThreadingServer(serveraddr, SimpleHTTPRequestHandler)
        srvr.serve_forever()


## 后台支撑

①js端传递为:startMind  \\\\192.168.4.62\\home\\_ui.xmind

②后端实现:Linux/DOS下均实现一个startMind的命令,shell/python的方式,对于参数如何传递,完全由自己进行决定


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值