j2ee关于响应头的传输猜想
服务器默认使用iso8859-1的编码格式将数据发送到客户端。对于响应体可以使用respones.setContentType("text/html;charset=uft-8")语句来设置服务器的编码格式,并告知客户端使用指定的编码格式解码。
但是对于响应头,似乎无法起效。这一点是我在写“excel下载“时碰到的,相关代码如下:
response.setContentType("octets/stream;charset=uft-8"); // 通知浏览器发送的数据的编码格式是utf-8且服务器使用utf-8编码response
String filename = "职员列表";
filename = new String(filename.getBytes("gb2312"),"ISO8859-1");//浏览器将头部按照gbk解码
response.addHeader("Content-Disposition","attachment;filename=" + filename + ".xlsx");
这段代码中头部携带的filename必须进行gbk编码后再用iso解码成字符串。
它的原理应该如下:
服务器端会按iso解码头部字符串,而客户端收到字节流后确实按gbk去解码。
所以字节流需要是gbk编码格式,而为了让服务器正确将字符串编码成字节流,
所以服务器端需要用iso格式解码字节流。
转载于:https://www.cnblogs.com/sxf2086he/p/7891412.html
j2ee关于响应头的传输猜想相关推荐
- 【译】在ASP.Net和IIS中删除不必要的HTTP响应头
引入 每次当浏览器向Web服务器发起一个请求的时,都会伴随着一些HTTP头的发送.而这些HTTP头是用于给Web服务器提供一些额外信息以便于处理请求.比如说吧.如果浏览器支持压缩功能,则浏览器会发送A ...
- 常用的HTTP请求头与响应头
转载自:https://blog.csdn.net/qq_30553235/article/details/79282113 常用的HTTP请求头与响应头 HTTP消息头是指,在超文本传输协议( Hy ...
- 在ASP.Net和IIS中删除不必要的HTTP响应头
引入 每次当浏览器向Web服务器发起一个请求的时,都会伴随着一些HTTP头的发送.而这些HTTP头是用于给Web服务器提供一些额外信息以便于处理请求.比如说吧.如果浏览器支持压缩功能,则浏览器会发送A ...
- HTTP响应头和请求头信息对照表(一篇全)
HTTP Request Header 请求头 Header 解释 示例 Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/html Accept-Char ...
- 利用Access-Control-Allow-Origin响应头解决跨域请求
标签:cors 跨域请求 ACAO 2015-11-28 18:53 12103人阅读 评论(0) 收藏 举报 分类: web前端(5) J2EE服务器(2) 传统的跨域请求没有好的解决方案,无 ...
- HTTP_响应消息_响应头
2. 响应头: 1. 格式:头名称: 值 2. 常见的响应头: 1. Content-Type:服务器告诉客户端本次响应体数据格式以及编码格式 2. C ...
- 常用的HTTP响应头
响应头 说明 示例 状态 Access-Control-Allow-Origin 指定哪些网站可以跨域源资源共享 Access-Control-Allow-Origin: * 临时 Accept-Pa ...
- HTTP 响应的分块传输
Transfer-Encoding 响应头用于告诉客户端服务器发送内容的编码格式. 其可选值有: chunked:数据分块发送.此时应缺省 Content-Length 响应头. compress:使 ...
- http状态码 以及请求响应头相关
1xx消息[编辑] 这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束.由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非 ...
最新文章
- pathview包绘制富集的kegg图
- 程序员头发失踪之谜 | 每日趣闻
- Android4.0源码Launcher启动流程分析【android源码Launcher系列一】
- 智慧城市“聪明”在哪儿
- 第四章4.1 4.2 快速傅里叶变换FFT-介绍
- 张新波 | 十面埋伏 - 论大数据风控技术体系的构建
- 最高科技——疯狂的前缀和
- C语言文件操作 fopen, fclose, mkdir(打开关闭文件,建文件夹,判断文件是否存在可读或可写)
- 宁波大学2020计算机技术复试线,宁波大学2020年硕士研究生复试分数线
- [ BZOJ 3879 ] SvT
- 模块化加载_webpack模块化原理-异步加载模块
- 10分钟搞定webpack打包
- 华为eSight网络监控平台安装-最新版本
- Promise初步详解(resolve,reject,catch)
- apicloud访问php,支付宝 app应用 受权 php + APICloud
- Make sure that `gem install sqlite3 -v '1.3.13' --source 'https://rubygems.org/'` succeeds before...
- vue项目根据不同手机尺寸设置引入不同图片的功能
- C++中的delegate
- 基于ARM Cortex-M3微控制器(STM32系列)基础知识(三)——ARM指令集
- linux gcc忽略警告,GCC 警告提示的用法
热门文章
- 当领导,核心是“抓住2点、做好5条”!做到了,员工根本不用管
- Transformer靠什么“基因“,得以闯入CV界秒杀CNN?
- 工业4.0,人工智能狂潮正在席卷制造业 | 500强系列报告
- 分组卷积新进展,全自动学习的分组有哪些经典模型?
- CIKM投稿数量1700篇,图神经网络成热门方向,最佳论文纷纷进行图研究
- 我是AI产品经理,就必须掌握AI技术吗?
- 深度强化元学习教程---元学习概述
- EMW 性能优化二之---并发配置
- (节点分类)四大图数据集AIFB,MUTAG,BGS,AM数据集获取
- Gartner:解开关于人工智能的六个迷思