我已經構建了gae webapps,而無需使用dispatch()方法。我在嘗試使用webapp2_extras.auth
時遇到了這個問題,但我並不完全瞭解它的概念,以及它如何適合get()
和post()
方法。根據其簡要文件:什麼是webapp2的dispatch()方法用於?
調度請求。 這將首先檢查在 匹配路線中是否定義了一個handler_method,如果沒有,將使用對應於 請求方法(
get()
,post()
等)的方法。
我的理解是,它檢查我的路線,看看是否存在處理請求的處理程序類,但不是現有處理程序類中已定義的dispatch()
方法?另外,是不是請求從客戶端調度?
我對它的一些用例感到困惑,尤其是在webapp_extras.auth
的環境中。
請求處理程序是否已知道要調用的方法?例如,如果一個表單是用'method =「get」'提交的,那麼這個請求是不是自動發送到'get(self)'方法? – puoyaahhh
@haopei - WSGIApplication通過路由器(通過'default_dispatcher'方法)將請求分派給處理程序。一旦請求到達處理程序,就由處理程序決定請求對應的方法。 'dispatch'是負責挑選方法並調用它的方法。 – mgilson