HTTP和HTTPS
1、HTTP与HTTPS的区别:
安全性:HTTP是明文传输,容易被窃听;HTTPS通过SSL/TLS加密数据,提供更高的安全性。
端口:HTTP默认使用端口80,而HTTPS使用端口443。
身份验证:HTTPS使用数字证书验证服务器身份,增强信任。
2、HTTP请求和响应的结构:
请求:包括请求方法(如GET、POST)、请求URL、请求头(如User-Agent、Accept等)和请求体(在POST请求中)。
响应:包括状态码(如200、404)、响应头(如Content-Type、Set-Cookie等)和响应体(通常是HTML或JSON等数据)。
3、常见的HTTP状态码:
200:成功(OK)。
404:未找到(Not Found)。
500:服务器内部错误(Internal Server Error)。
301:永久重定向(Moved Permanently)。
403:禁止访问(Forbidden)。
4、HTTP方法的区别:
GET:请求数据,通常不带请求体,安全且幂等。
POST:提交数据,通常用于创建资源,可能会有请求体,不幂等。
PUT:更新资源,通常包含请求体,幂等。
DELETE:删除资源,通常不带请求体,幂等。
5、Cookie和Session:
Cookie:存储在客户端的小数据,用于维护用户状态(如登录信息),有过期时间。
Session:服务器端存储的用户状态信息,通过Session ID与客户端Cookie关联,通常更安全。
6、RESTful API:
REST(表述性状态转移)是一种架构风格,使用HTTP方法和状态码来操作资源,强调无状态性和可缓存性。
7、CORS(跨源资源共享):
CORS是一种机制,允许浏览器在一个源上请求另一个源的资源,使用特定的HTTP头(如Access-Control-Allow-Origin)进行控制。
8、HTTP/2和HTTP/3的改进:
HTTP/2:引入二进制分帧、多路复用、头部压缩等,减少延迟。
HTTP/3:基于QUIC协议,使用UDP而不是TCP,进一步提升连接速度和安全性。
9、代理服务器:
代理服务器作为客户端与服务器之间的中介,可以缓存请求、过滤内容或提供匿名访问。
10、缓存机制:
使用HTTP头来控制缓存行为,Cache-Control指定缓存策略,Expires指定过期时间,ETag用于版本控制。