利用python aiohttp編寫web框架

VHJIrwin 8年前發布 | 48K 次閱讀 Python開發

來自: http://my.oschina.net/runqun/blog/631692


兩個重要的東西:

  1. coroutine 

  2. yield from 或者 async/await (but just only python3.5+)

其實還有一些也是挺重要的,比如decorator(但是我比較懶。。。。。)

在整個過程中充滿了激情。。。。(流淚~~

在動態導入url handler時,總是獲取不到method和path的屬性

這是一段當時的代碼(mod是通過__import__函數加載的)

for attr in dir(mod):
    if attr.startswith('_'):
        continue 
    method = getattr(attr, '__method__',None)
    path = getattr(attr, '__route__',None)
    if method and path:
        add_route(app, attr)

當時我竟然懷疑難道是__import__()函數和import語句不一致嗎???

想不到我還是這么的天真無鞋。。。。。。

經過Google竟然沒有發現類似的問題

于是乎,自己寫了一個test,并使用import語句導入

媽蛋,使用import語句可以讀取到(這使我加深了對__import__函數的懷疑

然并卵,看到這行代碼的時候我忽然想到了什么。。。。

if attr.startswith('_'):

對,attr是str類型的。。。。。。(此時我真想抽自己兩巴掌

最后再次通過getattr函數讀取attr屬性,url handler總算添加進去了

無節操的貼個源碼

web_frame

 

最后的最后,感謝我親愛滴二貨能給我時間擼代碼(喵喵~~么么噠:

 

 本文由用戶 VHJIrwin 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!