前端无法获取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
相关推荐
Arms20613 小时前
python时区库学习
开发语言·python·学习
与光同尘 大道至简13 小时前
ESP32 小智 AI 机器人入门教程从原理到实现(自己云端部署)
人工智能·python·单片机·机器人·github·人机交互·visual studio
清水白石00814 小时前
深入 Python 对象模型:PyObject 与 PyVarObject 全解析
开发语言·python
tjjucheng14 小时前
小程序定制开发服务商推荐
python
囊中之锥.14 小时前
《从零到实战:基于 PyTorch 的手写数字识别完整流程解析》
人工智能·pytorch·python
子云之风14 小时前
LSPosed 项目编译问题解决方案
java·开发语言·python·学习·android studio
小北方城市网14 小时前
SpringBoot 全局异常处理与接口规范实战:打造健壮可维护接口
java·spring boot·redis·后端·python·spring·缓存
Red丶哞14 小时前
[Django Message超全总结教程](武沛齐老师)
数据库·django·sqlite
SunnyRivers14 小时前
打包 Python 项目
python·打包
万行14 小时前
机器人系统SLAM讲解
开发语言·python·决策树·机器学习·机器人