博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java----面试中将用到的网络基础知识(3)
阅读量:3907 次
发布时间:2019-05-23

本文共 1798 字,大约阅读时间需要 5 分钟。

HTTP超文本协议

http(Hypertext transfer protocol)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。也就是说,http协议规定了超文本传输所要遵守的规则。

特点
支持客户/服务器模式
简单快速
灵活
无连接
无状态(没有记忆能力)

请求/响应步骤

客户端连接到Web服务器

发送HTTP请求
服务器接受请求并返回HTTP请求
释放连接TCP连接
客户端浏览器解析HTML内容

在浏览器地址栏键入URL,按回车之后的流程

DNS解析

TCP连接(根据IP地址和默认关口)
发送HTTP请求
服务器请求处理并返回HTTP报文
浏览器解析渲染页面
连接结束
在这里插入图片描述

HTTP状态码

1xx:指示信息–请求已经接受,继续处理

2xx:成功
3xx:重定向
4xx:客户端错误,请求有语法错误
5xx:服务端错误:服务端未能实现合法的请求

常见状态码

200 OK:正常

400 Bad Request:客户端请求有语法错误
404 Not Found:请求资源不存在,输入了错误的URL
403 Forbidden:服务器收到请求,但拒绝提供服务
500 Internal Server Error 服务器出错
503 Server Unavailable:当前不能处理客户端请求,一段时间后可能恢复正常

Cookie和Session的区别

cookie的由来

HTTP协议是无状态的,无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况。
状态可以理解为客户端和服务器在某次会话中产生的数据,那无状态的就以为这些数据不会被保留。会话中产生的数据又是我们需要保存的,也就是说要“保持状态”。因此cookie就是在这样一个场景下诞生。
Cookie
是服务器发给客户端的特殊信息,以文本形式存放在客户端
客户端再次请求的时候,会把Cookie回发
服务器收到后,会解析Cookie生成与客户端相对应的内容

(网页的记住密码,通过Cookie实现)

在这里插入图片描述
session的由来
cookie虽然在一定程度上解决了“保持状态“的需求,但是由于cookie本身最大支持4096字节,以及cookie本身保存在客户端,可能被拦截或窃取,因此就需要有一种新的东西,它能支持更多的字节,并且他保存在服务器,有较高的安全性。这就是session。

Session

服务器端的机制,在服务器上保存的信息
解析服务器请求并操作session id,按需求保存状态信息

区别

Cookie存放在客户端浏览器上,Session放在服务器上
Session相对于Cookie更安全
若考虑减轻服务器负担,应当使用Cookie

HTTP和HTTPS的区别

HTTPS是安全版HTTP

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL/TLS协议,SSL/TLS依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密
HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
1、https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl/tls加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

转载地址:http://ogqen.baihongyu.com/

你可能感兴趣的文章
Axis2介绍
查看>>
全面接触java集合框架
查看>>
JAVA集合小结
查看>>
Java中的集合
查看>>
SOA、网格计算、云计算与P2P技术
查看>>
Junit4 标注总结
查看>>
Spring事务配置的五种方式
查看>>
关系型数据库性能优化总结
查看>>
IBM MQ 学习笔记
查看>>
MB与MQ简介
查看>>
MQ3
查看>>
MQ 消息列队
查看>>
eclipse的内存设置始终会提示内存溢出
查看>>
Eclipse Debug不为人知的秘密
查看>>
iBatis入门和开发环境搭建
查看>>
iBATIS入门程序六大步详解
查看>>
一个简单的iBatis入门例子
查看>>
mybatis教程
查看>>
struts2教程1
查看>>
struts2标签说明
查看>>