摘要:首先是的請求接著是的請求在本次分享中,我們介紹了的請求,包括請求,并將介紹如何使用和來測試該本次分享到此結(jié)束,歡迎大家交流
??Tornado是現(xiàn)在的主流 Web 服務(wù)器框架,它與大多數(shù) Python 的框架有著明顯的區(qū)別:它是非阻塞式服務(wù)器,而且速度相當(dāng)快。得利于其非阻塞的方式和對 epoll 的運(yùn)用,Tornado 每秒可以處理數(shù)以千計(jì)的連接,這意味著對于實(shí)時(shí) Web 服務(wù)來說,Tornado 是一個(gè)理想的 Web 框架。
??在本文中,我們將介紹tornado的HTTP請求,包括GET、POST請求,并將介紹如何來測試該app.
??我們的項(xiàng)目結(jié)構(gòu)如下:
??tornado.py的完整代碼如下:
# tornado的GET、POST請求示例 import os.path import tornado.httpserver import tornado.ioloop import tornado.options import tornado.web from tornado.options import define, options #定義端口為8080 define("port", default=8080, help="run on the given port", type=int) # GET請求 class IndexHandler(tornado.web.RequestHandler): # get函數(shù) def get(self): self.render("index.html") # POST請求 # POST請求參數(shù): name, age, city class InfoPageHandler(tornado.web.RequestHandler): # post函數(shù) def post(self): name = self.get_argument("name") age = self.get_argument("age") city = self.get_argument("city") self.render("infor.html", name=name, age=age, city=city) # 主函數(shù) def main(): tornado.options.parse_command_line() # 定義app app = tornado.web.Application( handlers=[(r"/", IndexHandler), (r"/infor", InfoPageHandler)], #網(wǎng)頁路徑控制 template_path=os.path.join(os.path.dirname(__file__), "templates") # 模板路徑 ) http_server = tornado.httpserver.HTTPServer(app) http_server.listen(options.port) tornado.ioloop.IOLoop.instance().start() main()
??templates文件夾為存放HTML文件的模板目錄,其中index.html的代碼如下:
Person Info Enter your information:
infor.html的代碼如下:
Welcome Welcome
Hello, {{name}}! You are {{age}} years old now , and you live in {{city}}.
??這樣我們就完成了tornado的一個(gè)簡單的HTTP請求的示例項(xiàng)目。在瀏覽器中輸入localhost:8080/,界面如下,并在輸入框中輸入如下:
??點(diǎn)擊“提交”按鈕后,頁面如下:
??以上我們已經(jīng)完成了這個(gè)web app的測試,但是在網(wǎng)頁中測試往往并不方便。以下我們將介紹兩者測試web app的方法:
postman
curl
??首先是postman. postman 提供功能強(qiáng)大的 Web API 和 HTTP 請求的調(diào)試,它能夠發(fā)送任何類型的HTTP 請求 (GET, POST, PUT, DELETE…),并且能附帶任何數(shù)量的參數(shù)和 Headers.
??首先是GET請求的測試:
在Body中有三種視圖模式:Pretty,Raw,Preview, Pretty為HTML代碼, Raw為原始視圖,Preview為網(wǎng)頁視圖。
??接著是POST請求:
??在Linux中,我們還可以用curl命令來測試以上web app.在Linux中,curl是一個(gè)利用URL規(guī)則在命令行下工作的文件傳輸工具,可以說是一款很強(qiáng)大的http命令行工具。它支持文件的上傳和下載,是綜合傳輸工具。
??首先是curl的GET請求:
??接著是curl的POST請求:
??在本次分享中,我們介紹了tornado的HTTP請求,包括GET、POST請求,并將介紹如何使用postman和curl來測試該app.
??本次分享到此結(jié)束,歡迎大家交流~~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41743.html
摘要:對參數(shù)類型進(jìn)行檢驗(yàn),這里為當(dāng)參數(shù)類型不合適是會拋出一個(gè)異常。將使用的第二個(gè)參數(shù)值作為默認(rèn)值。而請求將從格式中取得指定的文本。這里需要正則表達(dá)式相關(guān)的知識,到了后面的學(xué)習(xí)中,必要時(shí)再去深入學(xué)習(xí)。到目前我們使用了,還支持任何合法的請求。 參考書籍《Introduction to Tornado》1.1 Tornado是什么?Tornado是使用Python編寫的一個(gè)強(qiáng)大的、可擴(kuò)展的Web服...
摘要:學(xué)習(xí)筆記七數(shù)學(xué)形態(tài)學(xué)關(guān)注的是圖像中的形狀,它提供了一些方法用于檢測形狀和改變形狀。學(xué)習(xí)筆記十一尺度不變特征變換,簡稱是圖像局部特征提取的現(xiàn)代方法基于區(qū)域圖像塊的分析。本文的目的是簡明扼要地說明的編碼機(jī)制,并給出一些建議。 showImg(https://segmentfault.com/img/bVRJbz?w=900&h=385); 前言 開始之前,我們先來看這樣一個(gè)提問: pyth...
摘要:夏天太熱,又不想出門,就讓我們用的來搭建屬于自己的可以對話的老婆吧本文擬使用的開發(fā)語言實(shí)現(xiàn)類似于的平臺的小娜,或者是下的的。 夏天太熱,又不想出門,就讓我們用的Python來搭建屬于自己的?可以對話的AI老婆吧? 本文擬使用Python的開發(fā)語言實(shí)現(xiàn)類似于的WIndows平臺的小娜,或者是IOS下的Siri的。最終達(dá)到人機(jī)對話的效果。 showImg(https://segment...
摘要:而這里的方法則是告訴來讀取模板文件,并將結(jié)果返回給瀏覽器。依舊可以使用,等條件控制語句,但是要記得以結(jié)尾。替換字符串中的字符為編碼形式。模塊模塊是封裝模板中包含的標(biāo)記樣式以及行為的可復(fù)用組件。 表單和模板 import os.path import tornado.httpserver import tornado.ioloop import tornado.options impo...
閱讀 3439·2021-11-22 09:34
閱讀 1908·2019-08-30 12:53
閱讀 3502·2019-08-28 18:07
閱讀 2988·2019-08-27 10:55
閱讀 2967·2019-08-26 10:12
閱讀 3596·2019-08-23 18:21
閱讀 1349·2019-08-23 14:10
閱讀 1483·2019-08-23 13:04