首页 > 编程 > Python > 正文

python 搭建简单的http server,可直接post文件的实例

2020-01-04 13:37:32
字体:
来源:转载
供稿:网友

server:

#coding=utf-8from BaseHTTPServer import BaseHTTPRequestHandlerimport cgiclass PostHandler(BaseHTTPRequestHandler): def do_POST(self):  form = cgi.FieldStorage(   fp=self.rfile,   headers=self.headers,   environ={'REQUEST_METHOD':'POST',      'CONTENT_TYPE':self.headers['Content-Type'],      }  )  self.send_response(200)  self.end_headers()  self.wfile.write('Client: %sn ' % str(self.client_address) )  self.wfile.write('User-agent: %sn' % str(self.headers['user-agent']))  self.wfile.write('Path: %sn'%self.path)  self.wfile.write('Form data:n')  for field in form.keys():   field_item = form[field]   filename = field_item.filename   filevalue = field_item.value   filesize = len(filevalue)#文件大小(字节)   #print len(filevalue)	 #print (filename)   with open(filename.decode('utf-8'),'wb') as f:    f.write(filevalue)  return def StartServer(): from BaseHTTPServer import HTTPServer sever = HTTPServer(("",8080),PostHandler) sever.serve_forever()    if __name__=='__main__': StartServer()

client:

#coding=utf-8import requestsurl = "http://172.16.1.101:8080"path = "/home/ly/ly.exe"print pathfiles = {'file': open(path, 'rb')}r = requests.post(url, files=files)print (r.url)print (r.text)

以上这篇python 搭建简单的http server,可直接post文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表