亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python服務器端收發(fā)請求的實現(xiàn)代碼

系統(tǒng) 1517 0

最近學習了python的一些服務器端編程,記錄在此。

發(fā)送get/post請求

            
# coding:utf-8
import httplib,urllib #加載模塊
#urllib可以打開網站去拿
#res = urllib.urlopen('http://baidu.com');
#print res.headers
#定義需要進行發(fā)送的數(shù)據   
params = urllib.urlencode({'param':'6'});
#定義一些文件頭   
headers = {"Content-Type":"application/x-www-form-urlencoded",
      "Connection":"Keep-Alive",'Content-length':'200'};
#與網站構建一個連接
conn = httplib.HTTPConnection("localhost:8765");
#開始進行數(shù)據提交  同時也可以使用get進行
conn.request(method="POST",url="/",body=params,headers=headers);
#返回處理后的數(shù)據
response = conn.getresponse();
print response.read()
#判斷是否提交成功
if response.status == 200:
  print "發(fā)布成功!^_^!";
else:
  print "發(fā)布失敗\^0^/";
#關閉連接
conn.close();
          

利用urllib模塊可以方便的實現(xiàn)發(fā)送http請求.urllib的參考手冊

http://docs.python.org/2/library/urllib.html

建立http服務器,處理get,post請求

            
# coding:utf-8
from BaseHTTPServer import HTTPServer,BaseHTTPRequestHandler
class RequestHandler(BaseHTTPRequestHandler):
  def _writeheaders(self):
    print self.path
    print self.headers
    self.send_response(200);
    self.send_header('Content-type','text/html');
    self.end_headers()
  def do_Head(self):
    self._writeheaders()
  def do_GET(self):
    self._writeheaders()
    self.wfile.write("""


	
            
            
            
            

this is get!

"""+str(self.headers)) def do_POST(self): self._writeheaders() length = self.headers.getheader('content-length'); nbytes = int(length) data = self.rfile.read(nbytes) self.wfile.write("""

this is put!

"""+str(self.headers)+str(self.command)+str(self.headers.dict)+data) addr = ('',8765) server = HTTPServer(addr,RequestHandler) server.serve_forever()

注意這里,python把response的消息體記錄在了rfile中。BaseHpptServer沒有實現(xiàn)do_POST方法,需要自己重寫。之后我們新建類RequestHandler,繼承自 baseHTTPServer 重寫do_POST方法,讀出rfile的內容即可。
但是要注意,發(fā)送端必須指定content-length.若不指定,程序就會卡在rfile.read()上,不知道讀取多少。

參考手冊 http://docs.python.org/2/library/basehttpserver.html


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 4hutv四虎最新地址 | 国产一级一级毛片 | 国产人成精品免费视频 | 亚洲精品第一综合99久久 | 国产精品免费看香蕉 | 欧美亚洲另类久久综合 | 欧美成人午夜 | 久久国产加勒比精品无码 | 99国产精品视频免费观看 | 精品欧美一区二区三区 | 亚洲韩国日本一级二级r级 亚洲韩精品欧美一区二区三区 | 国外欧美一区另类中文字幕 | 色综合手机在线 | 人人做人人爽久久久精品 | 久久女 | 国产精品网站在线观看 | 久久99热只有视精品6国产 | 欧美精品v国产精品v | 999精品视频在线 | 国产成人精品日本亚洲专一区 | 草久在线 | 一本大道香蕉中文在线高清 | 久久亚洲精选 | 亚洲精品视频在线观看免费 | 黄黄的网站在线观看 | 亚洲美女视频网站 | 成人网视频 | 天天爽夜夜爽天天做夜夜做 | 一级日本特黄毛片视频 | 国产精品永久免费自在线观看 | 国产欧美精品 | 国产免费一区二区三区 | 一级片aaaaaa | 日本天天谢天天要天天爱 | 国内精品手机在线观看视频 | 热99re久久精品2久久久 | 亚洲精品aⅴ一区二区三区 亚洲精品ccc | 久久综合色播 | 久久精品亚洲一级毛片 | 国产片一级aaa毛片视频 | 视频二区中文字幕 |