使用Python快速搭建HTTP服務(wù)和文件共享服務(wù)的實例講解
SimpleHTTPServer
SimpleHTTPServer是Python自帶的一個HTTP服務(wù)類,通過使用它,我們能夠在任意平臺(Window,Linux,MacOS)快速搭建一個HTTP服務(wù)和共享服務(wù),只需要安裝Python環(huán)境即可
如何使用
如果你想開啟一個運行在特定端口上的文件共享服務(wù),可以執(zhí)行如下命令
python -m SimpleHTTPServer [port]
這將會把當(dāng)前目錄下的文件和目錄顯示出來,如果我們不指定端口,默認(rèn)為8000
當(dāng)然上述命令也開啟了一個HTTP服務(wù),假設(shè)當(dāng)前運行目錄下由一個文件test,那么我們可以這樣請求
curl "http://localhost:8000/test" -v
請求結(jié)果為test里面的內(nèi)容
用途
軟件開發(fā)過程都是多人協(xié)作的,當(dāng)我們在開發(fā)項目依賴于其他人的HTTP接口的時候,我們可以使用SimpleHTTPServer來對依賴的接口進(jìn)行mock,這樣能夠加快聯(lián)調(diào)的速度,及早的調(diào)試出程序的問題。一般我們的文件中使用json串來模擬結(jié)果
不足
python系統(tǒng)自帶的SimpleHTTPServer只支持GET和HEAD方法,不支持POST方法(測試環(huán)境為python 2.7.10),需要進(jìn)行簡單的修改
#部分源碼 def do_GET(self): """Serve a GET request.""" f = self.send_head() if f: try: self.copyfile(f, self.wfile) finally: f.close() def do_HEAD(self): """Serve a HEAD request.""" f = self.send_head() if f: f.close()
我們可以將SimpeHTTPServer方法復(fù)制一份,然后在里面實現(xiàn)do_POST方法即可
def do_POST(self): """Serve a POST request.""" self.do_GET()
將文件保存后運行,即可支持POST方式請求
以上這篇使用Python快速搭建HTTP服務(wù)和文件共享服務(wù)的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
numpy.std() 計算矩陣標(biāo)準(zhǔn)差的方法
今天小編就為大家分享一篇numpy.std() 計算矩陣標(biāo)準(zhǔn)差的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07python求加權(quán)平均值的實例(附純python寫法)
今天小編就為大家分享一篇python求加權(quán)平均值的實例(附純python寫法),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08python利用Excel讀取和存儲測試數(shù)據(jù)完成接口自動化教程
這篇文章主要介紹了python利用Excel讀取和存儲測試數(shù)據(jù)完成接口自動化教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04Python中循環(huán)引用(import)失敗的解決方法
在python中常常會遇到循環(huán)import即circular import的問題,下面這篇文章主要給大家介紹了關(guān)于Python中循環(huán)引用(import)失敗的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04Python實現(xiàn)將內(nèi)容寫入文件的五種方法總結(jié)
本篇帶你詳細(xì)看一下python將內(nèi)容寫入文件的方法以及細(xì)節(jié),主要包括write()方法、writelines()?方法、print()?函數(shù)、使用?csv?模塊、使用?json?模塊,需要的可以參考一下2023-04-04