python的BaseHTTPServer模块怎样接收post请求?能给出,把接收到的POST数据输...

python的BaseHTTPServer模块怎样接收post请求?能给出,把接收到的POST数据输出到页面的具体代码吗?... python的BaseHTTPServer模块怎样接收post请求?能给出,把接收到的POST数据输出到页面的具体代码吗? 展开
 我来答
百度网友4826b3c
2015-04-17 · TA获得超过5024个赞
知道大有可为答主
回答量:2999
采纳率:96%
帮助的人:1299万
展开全部
#!/usr/bin/python
#encoding=utf-8
'''
基于BaseHTTPServer的http server实现,包括腊世get,post方法,get参数接收,post参数接收喊罩。
'''
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
import io,shutil
import urllib
import os, sys

class MyRequestHandler(BaseHTTPRequestHandler):
def do_GET(self):
mpath,margs=urllib.splitquery(self.path) # ?分割
self.do_action(mpath, margs)

def do_POST(self):
mpath,margs=urllib.splitquery(self.path)
datas = self.rfile.read(int(self.headers['content-length']))
self.do_action(mpath, datas)

def do_action(self, path, args):
self.outputtxt(path + args )

def outputtxt(self, content):
#指定郑局闹返回编码
enc = "UTF-8"
content = content.encode(enc)
f = io.BytesIO()
f.write(content)
f.seek(0)
self.send_response(200)
self.send_header("Content-type", "text/html; charset=%s" % enc)
self.send_header("Content-Length", str(len(content)))
self.end_headers()
shutil.copyfileobj(f,self.wfile)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式