面试题2(20220513)

本文详细介绍了HTTP常见的状态码,包括200、300、400、401、404和500的含义。同时,对比了GET和POST请求的区别,如安全性、数据大小、数据类型、速度和用途。此外,还探讨了HTTP请求中的转发与重定向的差异,以及Cookie和Session的不同。最后,针对GET和POST请求的中文乱码问题提出了解决方案。
摘要由CSDN通过智能技术生成

1>列举出你知道的Http的状态码并解释

(参考资料:常见的http状态码及其含义 - 五彩斑斓-猫 - 博客园 (cnblogs.com))

1)200:成功,服务器已成功处理了请求,通常这标识服务器提供了请求的网页

2)300:多种选择,针对请求,服务器可执行多种操作,服务器可根据请求者选择一项操作,或提供操作列表供请求者选择

3)400:错误请求,服务器不理解请求的语法

4)401:未授权,请求要求验证身份。对于需要登录的网页,服务器可能返回次响应

5)404:未找到,服务器找不到请求的网页

6)500:服务器内部错误,服务器遇到错误,无法完成请求

2>Http请求中GET请求和POST请求的区别

(详情可以看http请求中get和post方法的区别_海淀码农的博客-CSDN博客_get方法和post的区别)

(1)post更安全(不会作为url的一部分,不会被缓存、保存在服务器日志、以及浏览器浏览记录中)

(2)post发送的数据更大(get有url长度限制)

(3)post能发送更多的数据类型(get只能发送ASCII字符)

(4)post比get慢

(5)post用于修改和写入数据,get一般用于搜索排序和筛选之类的操作(淘宝,支付宝的搜索查询都是get提交),目的是资源的获取,读取数据
 

3>转发和重定向有什么区别

1.重定向访问服务器两次,转发只访问服务器一次

2.转发页面的URL不会改变,而重定向地址会改变

3.转发只能转发到服务器内(前后端共用一个request),重定向可以到任意资源路径(跨域,还会产生新的request 不共享资源)

4>Cookie和Session有什么区别

同:

两者都能设置有效时长

异:

1)cookie将数据存储在浏览器上,session将数据存储在服务器上

2)cookie保存数据不安全

3)当访问量增多,session存储数据增加,占用服务器的内存,会影响到服务器的性能

4)单个cookie保存数据大小不超4k,大部分浏览器限制一个站点最多保存20个cookie,而session不限制

5)session的载体是cookie,通过cookie携带sessionId,达到唯一标识的目的,让信息保存和传递更安全

5>针对GET请求和POST请求的中文乱码问题如何处理

1)post请求在获取数据前转换编码

request.setCharacterEncoding("utf-8");

2)get请求

(参考资料如何解决Get,Post请求里面的中文乱码问题_JAVA成神的博客-CSDN博客_post请求中文乱码问题)

// 获取请求参数
String username = req.getParameter("username");
//1 先以 iso8859-1 进行编码
//2 再以 utf-8 进行解码
username = new String(username.getBytes("iso-8859-1"), "UTF-8");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值