首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在flask中获取http头?

如何在flask中获取http头?
EN

Stack Overflow用户
提问于 2015-04-01 17:16:56
回答 3查看 222.5K关注 0票数 258

我是python的新手,使用Python Flask和生成REST API服务。

我想检查发送给客户端的授权头。

但是我找不到在flask中获取HTTP报头的方法。

对于获得HTTP头授权的任何帮助,我们都将不胜感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-04-01 17:25:48

代码语言:javascript
复制
from flask import request
request.headers.get('your-header-name')

request.headers的行为类似于字典,因此您也可以像使用任何字典一样获取标题:

代码语言:javascript
复制
request.headers['your-header-name']
票数 397
EN

Stack Overflow用户

发布于 2019-03-08 12:35:09

只需注意,如果头部不存在,方法之间的区别是

代码语言:javascript
复制
request.headers.get('your-header-name')

将返回None或无异常,因此您可以像这样使用它

代码语言:javascript
复制
if request.headers.get('your-header-name'):
    ....

但是下面的代码会抛出一个错误

代码语言:javascript
复制
if request.headers['your-header-name'] # KeyError: 'your-header-name'
    ....

您可以通过以下方式处理它

代码语言:javascript
复制
if 'your-header-name' in request.headers:
   customHeader = request.headers['your-header-name']
   ....
票数 25
EN

Stack Overflow用户

发布于 2019-09-03 20:32:09

如果有人试图获取所有已传递的标头,那么只需使用:

代码语言:javascript
复制
dict(request.headers)

它为你提供了一个字典中的所有头文件,你实际上可以从中执行任何你想做的操作。在我的用例中,我必须将所有头文件转发到另一个API,因为python API是一个代理。

票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29386995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档