<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 重寫 RequestHandler 的方法函數 除了 `get()`/`post()`等以外,`RequestHandler` 中的一些別的方法函數,這都是 一些空函數,它們存在的目的是在必要時在子類中重新定義其內容。對于一個請求的處理 的代碼調用次序如下: 1. 程序為每一個請求創建一個 RequestHandler 對象 2. 程序調用 `initialize()` 函數,這個函數的參數是 `Application` 配置中的關鍵字 參數定義。(`initialize` 方法是 Tornado 1.1 中新添加的,舊版本中你需要 重寫 `__init__` 以達到同樣的目的) `initialize` 方法一般只是把傳入的參數存 到成員變量中,而不會產生一些輸出或者調用像 `send_error` 之類的方法。 3. 程序調用 `prepare()`。無論使用了哪種 HTTP 方法,`prepare` 都會被調用到,因此 這個方法通常會被定義在一個基類中,然后在子類中重用。prepare`可以產生輸出 信息。如果它調用了`finish`(或`send_error` 等函數),那么整個處理流程 就此結束。 4. 程序調用某個 HTTP 方法:例如 `get()`、`post()`、`put()` 等。如果 URL 的正則表達式模式中有分組匹配,那么相關匹配會作為參數傳入方法。 下面是一個示范 `initialize()` 方法的例子: ``` class ProfileHandler(RequestHandler): def initialize(self, database): self.database = database def get(self, username): ... app = Application([ (r'/user/(.*)', ProfileHandler, dict(database=database)), ]) ``` 其它設計用來被復寫的方法有: * `get_error_html(self, status_code, exception=None, **kwargs)` - 以字符串的形式 返回 HTML,以供錯誤頁面使用。 * `get_current_user(self)` - 查看下面的[用戶認證](#user-authentication)一節 * `get_user_locale(self)` - 返回 `locale` 對象,以供當前用戶使用。 * `get_login_url(self)` - 返回登錄網址,以供 `@authenticated` 裝飾器使用(默認位置 在 `Application` 設置中) * `get_template_path(self)` - 返回模板文件的路徑(默認是 `Application` 中的設置)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看