HTTP协议请求内容的格式
URI结构:
HTTP使用同一资源标识符(URI)来传输数据和建立连接。URL(统一资源定位符)是一种特殊种类的URI,包含了用于查找的资源的足够信息,我们一般常见的就是URL,而一个完整 URL包含下面几个
协议部分:URL的协议部分为http:表示网页用是HTTP协议,后面的//为分隔符
域名部分:比如www.baidu.com,发送其扭曲需要向DNS服务器解析IP如果未来优化请求,可以直接用IP作为域名使用
端口部分:域名后面使用80表示端口,和域名之间用:分隔,端口如果是80可以不写,端口不是URL的必须部分
虚拟目录部分:域名的第一个/开始到最后一个/为止,是虚拟的部分,其中,虚拟目录也不是URL必须部分
文件名部分:从域名最后一个/开始到?为止,是文件名部分,如果没有?则是从域名最后一个/开始到#为止,是文件名部分:如果没有?和#,那么就从域名的最后一个/从开始到结束,都是文件名部分,文件名也不是一个URL的必须部分,如果没有文件名,则使用默认的文件名
锚部分:从#喀什到最后,都是锚部分,锚也不是URL的必须部分
参数部分:从?开始到#为止之间的部分是参数部分,又称为搜索部分,查询部分。如果有多个参数,各个参数之间用&作为分隔符
/asdasd/asdasdasdas=asd
HTTP请求参数的乱码问题
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
Request对象获取HTTP协议请求头的值
request.getHeader("请求头的名称");
|
|