个人对浏览器与servlet组件进行交互时的编码及解码的认识
2013-09-16 18:27
225 查看
首先要从浏览器读取html文件开始说,你写的html文件肯定是以某种字符集编码的。所以浏览器将html文件读入内存时要先进行解码,(我主要说解码编码,其他一些过程我省略)。然后浏览器自己肯定有一个字符集编码的,那么浏览器又从内存中读取数据进行编码,然后显示页面。
这样,我假设页面有一个表单,有一个文本输入框。用户在文本输入框中输入中文(比如说“你好”)。然后点击提交。浏览器收到请求(假设提交方式是post)。浏览器数据编码传输给servlet引擎。servlet引擎对数据进行解码,默认是ISO-8859-1,可以用request.setCharacterEncoding方法进行设置。解码后的数据传给request,servlet组件从request里读取到“你好”,假设先要要实现的功能是把“你好”返回给页面,在页面显示。那么servlet就要与response建立连接,然后对“你好”进行编码,然后把“你好”传递给response。servlet引擎从response里读取,然后把数据传给浏览器(这里,我觉得应该不用进行编码解码。因为你responese里面已经存放的就是“你好”编码后的数据了),
浏览器收到数据,对数据进行解码,然后读入内存,然后浏览器再读取内存内容,对其进行编码,并显示在页面。
可能还有一些欠考虑的地方,希望各位大神指出。
这样,我假设页面有一个表单,有一个文本输入框。用户在文本输入框中输入中文(比如说“你好”)。然后点击提交。浏览器收到请求(假设提交方式是post)。浏览器数据编码传输给servlet引擎。servlet引擎对数据进行解码,默认是ISO-8859-1,可以用request.setCharacterEncoding方法进行设置。解码后的数据传给request,servlet组件从request里读取到“你好”,假设先要要实现的功能是把“你好”返回给页面,在页面显示。那么servlet就要与response建立连接,然后对“你好”进行编码,然后把“你好”传递给response。servlet引擎从response里读取,然后把数据传给浏览器(这里,我觉得应该不用进行编码解码。因为你responese里面已经存放的就是“你好”编码后的数据了),
浏览器收到数据,对数据进行解码,然后读入内存,然后浏览器再读取内存内容,对其进行编码,并显示在页面。
可能还有一些欠考虑的地方,希望各位大神指出。
相关文章推荐
- JavaScript对浏览器的URL进行编码、解码
- 采集视频后在本地直接进行编码、解码(不进行网传),为什么显示出来有大量马赛克
- 在 Java 中如何进行 BASE64 编码和解码(转)
- 在LoadRunner中进行Base64的编码和解码
- 使用Java对UTF8URL进行编码解码以及进行编码方式的判断
- Python中进行Base64编码和解码
- C++进行base64编码和解码
- 用Encrypt、Decrypt对密码进行编码和解码操作。
- 简单 utf8 编码、解码,可用来对数据进行加密
- JAVA 对 URL 进行 编码与解码
- JS对URL进行编码和解码(三种方式区别)
- 实用命令:利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密
- JavaEE细节问题03——关于服务器和浏览器的编码解码
- Ext4核心组件Grid的变化及学习(4):grid与服务端使用direct进行数据交互
- Java如何进行Base64的编码(Encode)与解码(Decode)?
- js对url进行编码和解码(三种方式区别)
- python进行Base64编码和解码
- 实用命令:利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密
- 如何进行编码和通过 Visual C# InfoPath 中以编程方式解码文件附件
- angularJs如何与浏览器事件轮循进行交互。