JavaWeb入门—响应的结构

版权声明:. https://blog.csdn.net/WildestDeram/article/details/87635826

响应的结构

响应:由服务器返回给浏览器的显示结果

HTTP响应包含三部分:响应行、响应头、响应体

响应行:报文协议及版本、状态码及状态描述

响应头:数据以外的辅助信息

响应体:描述了浏览器要响应的信息

在响应行中的出现的"200"表示HTTP状态码,浏览器会根据状态码来判断服务器处理请求的状态

状态码 错误描述
200 服务器处理成功
404 无法找到文件
500 内部服务器错误(逻辑、代码问题)
403 服务器拒绝访问
301、302 请求重定向
400 无效的请求
401 未经过的授权
503 服务器负载或正在停机维护,无法处理请求

通过一个Servlet来展示响应头的详细参数

package com.imooc.servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 该类主要是对请求头进行操作
 * 该类包含了用户的操作系统以及运行环境
 */
@WebServlet("/UserAgentServlet")
public class UserAgentServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserAgentServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
			//获取请求头
			String UserAgent = request.getHeader("User-Agent");
			//设置文本方式的网页文件,语言是 中文
			response.setContentType("text/html;charset=UTF-8");
			response.getWriter().println(UserAgent);
			
			//模拟登陆设备不同
			String output = "";
			if(UserAgent.indexOf("Windows NT")!=-1) {
				output="<h1>这是PC端</h1>";
			}else if(UserAgent.indexOf("iphone")!=-1) {
				output="<h1>这是iphone端</h1>";
			}
			
			response.getWriter().print(output);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

HTTP/1.1 200:HTTP协议版本1.1,200表示服务器处理成功

Content-Type:text/html;charset=utf-8:文本形式,字符编码UTF-8支持中文

Content-Length:131:表示该html中有多少个字符

Date:表示数据产生的时间

猜你喜欢

转载自blog.csdn.net/WildestDeram/article/details/87635826