前端无法获取Django自定义响应头 Response Header

现象:

Django自定义响应头uuid,前端无法获取uuid的值

python 复制代码
response = HttpResponse(image,content_type='image/jpeg')
response['uuid'] = UUID
return response

原因 :

跨域问题 启用跨域请求(CORS)

在使用CORS方式跨域时,浏览器只会返回 默认的头部 Header,认情况下可用的响应头包括:

  • Cache-Control
  • Content-Language
  • Content-Type
  • Expires
  • Last-Modified
  • Pragma

解决:

使用 Access-Control-Expose-Headers

Access-Control-Expose-Headers 响应报头 指示哪些报头可以 公开 为通过列出他们的名字的响应的一部分

默认情况下,只显示6个简单的响应头,在上方也有介绍。

如果你想要客户端能够访问其他的请求头,则必须使用Access-Control-Expose-Headers 列出他们。

python 复制代码
UUID = str(uuid.uuid4())
l_uuid=UUID.split('-')
UUID=''.join(l_uuid)
response = HttpResponse(image,content_type='image/jpeg')
response['uuid'] = UUID
response['Access-Control-Expose-Headers'] = 'uuid' 
return response
相关推荐
幻云20101 小时前
Python深度学习:从筑基到登仙
前端·javascript·vue.js·人工智能·python
仰望星空@脚踏实地1 小时前
本地Python脚本是否存在命令注入风险
python·datakit·命令注入
LOnghas12112 小时前
果园环境中道路与树木结构检测的YOLO11-Faster语义分割方法
python
2501_944526424 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 蜘蛛纸牌游戏实现
android·java·python·flutter·游戏
飞Link4 小时前
【Django】Django的静态文件相关配置与操作
后端·python·django
Ulyanov5 小时前
从桌面到云端:构建Web三维战场指挥系统
开发语言·前端·python·tkinter·pyvista·gui开发
CCPC不拿奖不改名6 小时前
两种完整的 Git 分支协作流程
大数据·人工智能·git·python·elasticsearch·搜索引擎·自然语言处理
a努力。6 小时前
字节Java面试被问:TCP的BBR拥塞控制算法原理
java·开发语言·python·tcp/ip·elasticsearch·面试·职场和发展
费弗里6 小时前
一个小技巧轻松提升Dash应用debug效率
python·dash
小小测试开发6 小时前
Python浮点型常用方法全解析:从基础到实战
python