Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 15 for call_next (0.22 sec)

  1. docs_src/middleware/tutorial001.py

    import time
    
    from fastapi import FastAPI, Request
    
    app = FastAPI()
    
    
    @app.middleware("http")
    async def add_process_time_header(request: Request, call_next):
        start_time = time.time()
        response = await call_next(request)
        process_time = time.time() - start_time
        response.headers["X-Process-Time"] = str(process_time)
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Thu Mar 26 19:09:53 GMT 2020
    - 349 bytes
    - Viewed (0)
  2. tests/test_ws_router.py

                    return await app(scope, receive, send)  # pragma: no cover
    
                async def call_next():
                    return await app(scope, receive, send)
    
                websocket = WebSocket(scope, receive=receive, send=send)
                return await middleware_func(websocket, call_next)
    
            return wrapped_app
    
        return middleware_constructor
    
    
    def test_depend_validation():
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Sun Jun 11 19:08:14 GMT 2023
    - 7.5K bytes
    - Viewed (0)
  3. docs_src/sql_databases/sql_app_py310/alt_main.py

    models.Base.metadata.create_all(bind=engine)
    
    app = FastAPI()
    
    
    @app.middleware("http")
    async def db_session_middleware(request: Request, call_next):
        response = Response("Internal server error", status_code=500)
        try:
            request.state.db = SessionLocal()
            response = await call_next(request)
        finally:
            request.state.db.close()
        return response
    
    
    # Dependency
    def get_db(request: Request):
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Fri Jan 07 14:11:31 GMT 2022
    - 1.9K bytes
    - Viewed (0)
  4. docs_src/sql_databases/sql_app/alt_main.py

    models.Base.metadata.create_all(bind=engine)
    
    app = FastAPI()
    
    
    @app.middleware("http")
    async def db_session_middleware(request: Request, call_next):
        response = Response("Internal server error", status_code=500)
        try:
            request.state.db = SessionLocal()
            response = await call_next(request)
        finally:
            request.state.db.close()
        return response
    
    
    # Dependency
    def get_db(request: Request):
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Thu Mar 26 19:09:53 GMT 2020
    - 1.9K bytes
    - Viewed (0)
  5. docs_src/sql_databases/sql_app_py39/alt_main.py

    models.Base.metadata.create_all(bind=engine)
    
    app = FastAPI()
    
    
    @app.middleware("http")
    async def db_session_middleware(request: Request, call_next):
        response = Response("Internal server error", status_code=500)
        try:
            request.state.db = SessionLocal()
            response = await call_next(request)
        finally:
            request.state.db.close()
        return response
    
    
    # Dependency
    def get_db(request: Request):
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Fri Jan 07 14:11:31 GMT 2022
    - 1.9K bytes
    - Viewed (0)
  6. tests/test_dependency_contextvars.py

        yield request_state
        legacy_request_state_context_var.reset(contextvar_token)
    
    
    @app.middleware("http")
    async def custom_middleware(
        request: Request, call_next: Callable[[Request], Awaitable[Response]]
    ):
        response = await call_next(request)
        response.headers["custom"] = "foo"
        return response
    
    
    @app.get("/user", dependencies=[Depends(set_up_request_state_dependency)])
    def get_user():
    Python
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Thu Feb 17 12:40:12 GMT 2022
    - 1.5K bytes
    - Viewed (0)
  7. docs/em/docs/tutorial/middleware.md

        🚥 👆 ✔️ 🔗 ⏮️ `yield`, 🚪 📟 🔜 🏃 *⏮️* 🛠️.
    
        🚥 📤 🙆 🖥 📋 (📄 ⏪), 👫 🔜 🏃 *⏮️* 🌐 🛠️.
    
    ## ✍ 🛠️
    
    ✍ 🛠️ 👆 ⚙️ 👨‍🎨 `@app.middleware("http")` 🔛 🔝 🔢.
    
    🛠️ 🔢 📨:
    
    *  `request`.
    * 🔢 `call_next` 👈 🔜 📨 `request` 🔢.
        * 👉 🔢 🔜 🚶‍♀️ `request` 🔗 *➡ 🛠️*.
        * ⤴️ ⚫️ 📨 `response` 🏗 🔗 *➡ 🛠️*.
    * 👆 💪 ⤴️ 🔀 🌅 `response` ⏭ 🛬 ⚫️.
    
    ```Python hl_lines="8-9  11  14"
    Plain Text
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Sat Apr 01 09:26:04 GMT 2023
    - 2.4K bytes
    - Viewed (0)
  8. docs/de/docs/tutorial/middleware.md

    ## Erstellung einer Middleware
    
    Um eine Middleware zu erstellen, verwenden Sie den Dekorator `@app.middleware("http")` über einer Funktion.
    
    Die Middleware-Funktion erhält:
    
    * Den `request`.
    * Eine Funktion `call_next`, die den `request` als Parameter erhält.
        * Diese Funktion gibt den `request` an die entsprechende *Pfadoperation* weiter.
        * Dann gibt es die von der entsprechenden *Pfadoperation* generierte `response` zurück.
    Plain Text
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Tue Jan 23 11:26:59 GMT 2024
    - 3.4K bytes
    - Viewed (0)
  9. docs/en/docs/tutorial/middleware.md

    ## Create a middleware
    
    To create a middleware you use the decorator `@app.middleware("http")` on top of a function.
    
    The middleware function receives:
    
    * The `request`.
    * A function `call_next` that will receive the `request` as a parameter.
        * This function will pass the `request` to the corresponding *path operation*.
        * Then it returns the `response` generated by the corresponding *path operation*.
    Plain Text
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Thu Jan 11 16:31:18 GMT 2024
    - 2.9K bytes
    - Viewed (0)
  10. docs/zh/docs/tutorial/middleware.md

    !!! note "技术细节"
        如果你使用了 `yield` 关键字依赖, 依赖中的退出代码将在执行中间件*后*执行.
    
        如果有任何后台任务(稍后记录), 它们将在执行中间件*后*运行.
    
    ## 创建中间件
    
    要创建中间件你可以在函数的顶部使用装饰器 `@app.middleware("http")`.
    
    中间件参数接收如下参数:
    
    * `request`.
    * 一个函数 `call_next` 它将接收 `request` 作为参数.
        * 这个函数将 `request` 传递给相应的 *路径操作*.
        * 然后它将返回由相应的*路径操作*生成的 `response`.
    * 然后你可以在返回 `response` 前进一步修改它.
    
    ```Python hl_lines="8-9  11  14"
    {!../../../docs_src/middleware/tutorial001.py!}
    ```
    Plain Text
    - Registered: Sun Apr 21 07:19:11 GMT 2024
    - Last Modified: Sat Mar 27 17:25:21 GMT 2021
    - 2.7K bytes
    - Viewed (0)
Back to top