本文實例講述了Sanic框架基于類的視圖用法。分享給大家供大家參考,具體如下:
在網(wǎng)站制作、做網(wǎng)站中從網(wǎng)站色彩、結構布局、欄目設置、關鍵詞群組等細微處著手,突出企業(yè)的產(chǎn)品/服務/品牌,幫助企業(yè)鎖定精準用戶,提高在線咨詢和轉(zhuǎn)化,使成都網(wǎng)站營銷成為有效果、有回報的無錫營銷推廣。創(chuàng)新互聯(lián)公司專業(yè)成都網(wǎng)站建設10多年了,客戶滿意度97.8%,歡迎成都創(chuàng)新互聯(lián)客戶聯(lián)系。簡介
基于類的視圖只是實現(xiàn)對請求響應行為的類,他們提供了一種在同一端點上劃分不同HTTP請求類型的處理方式。不是定義和裝飾三個不同的處理函數(shù),而是為每個端點支持的請求類型分配一個處理函數(shù),可以為端點分配一個基于類的視圖。
定義視圖
基于類的視圖應該是子類HTTPMethodView
,關于HTTPMethodView
的簡單用法在前面的博文中有簡單的提到過。我們可以自定義一個類繼承于HTTPMethodView
,然后你可以在其中定義各種HTTP請求類型實施方法,如果接收到一個沒有定義方法的請求,那么將會產(chǎn)生一個響應:405:Method not allowed。
要在端點上注冊基于類的視圖,除了需要定義一個類來繼承HTTPMethodView
,那是不夠的,還需要調(diào)用app.add_route()
方法來進行注冊??捎玫姆椒òǎ?code>get、post
、put
、patch
和delete
。使用所有方法的類將如下所示:
from sanic import Sanic from sanic.views import HTTPMethodView from sanic.response import text class SanicView(HTTPMethodView): def get(self,request): return text("it is get") def post(self,request): return text("it is post") def put(self,request): return text("it is put") def patch(self,request): return text("it is patch") def delete(self,request): return text("it is delete") app = Sanic() app.add_route(SanicView.as_view(),"/method_view") if __name__ == "__main__": app.run()
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。