You need to enable JavaScript to run this app. FastAPI中对应Flask的request.environ.get('HTTP_REFERER', "")的实现方法是什么
优惠活动
大模型
产品
解决方案
定价
更多

FastAPI中对应Flask的request.environ.get('HTTP_REFERER', "")的实现方法是什么

FastAPI 获取 HTTP_REFERER 的实现方案

FastAPI 基于 Starlette 框架,提供了两种常用的获取 Referer 头的方式,可根据使用习惯选择:

  • 方法一:直接从请求头读取(推荐写法,最简洁)
    FastAPI 的请求头对象统一使用小写键名,直接调用 request.headers.get("referer", "") 即可读取,代码示例:

    from fastapi import FastAPI, Request
    
    app = FastAPI()
    
    @app.get("/demo")
    def get_referer(request: Request):
        referer = request.headers.get("referer", "")
        return {"当前请求的Referer": referer}
    
  • 方法二:兼容 Flask 的 environ 写法
    如果你习惯了 Flask 的调用逻辑,也可以直接沿用 request.environ.get 的写法,几乎不用改代码:

    from fastapi import FastAPI, Request
    
    app = FastAPI()
    
    @app.get("/demo")
    def get_referer(request: Request):
        referer = request.environ.get("HTTP_REFERER", "")
        return {"当前请求的Referer": referer}
    

补充说明:如果客户端请求没有携带 Referer 头,两种写法都会返回你设置的默认空字符串,不会触发异常。

内容的提问来源于stack exchange,提问作者DuckQueen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 06:57:02