①局域网可在内部传输数据,连接同一个路由器的是同一个局域网下,可以互相传输数据,但是不同的路由器之间不可以通过ip地址访问,因为路由器下的每台设备是由路由器下发的。(公网端口可以转连)
②ip地址
ip地址的格式:xxx.xxx.xxx.xxx,每个段0-255,每个段都是由8个0,1组成的。
ip地址分为两个部分:网络id ,主机id;
A类: 0.0.0.0 ~ 127
③域名与DNS解析
③当浏览器的地址栏中输入一个url按回车之后,发生了什么?
看浏览器的缓存,如果有就直接访问,没有再找本机hsot, 连家里路由器->上级路由,城市的LDNS服务器,继续向上级的DNS服务器找GDNS服务器。
127.0.0.1指的是localhost
0.0.0.0不知道ip默认使用
④五层网络模型(五层网络模型是层层嵌套的,层层加密的)
以下顺序是网络端的协议顺序,服务端顺序与之相反
1,应用层 http协议,dns协议
http协议分为两个部分,请求和响应
请求方式:get请求和post请求
请求头包含 get/post(请求方式)+ 路径 +协议版本
2,运输层 tcp协议/ udp协议
3,网络层 ip地址--ip协议
4,数据链路层 mac地址
5,物理层
⑤HTTP协议
请求Request
请求头
数据体
请求方式 url 协议版本
请求方式常用的是GET/POST,get的特点就是get请求的参数都在url里面,get传的数据都较少
post请求带有大量的数据体传输数据,
响应Response
响应头第一行是协议版本,状态码,message,属性:值
⑥get 请求和 post请求方式的区别
1,是基于什么前提的?如果什么前提都没有,不使用任何规范,只考虑语法和理论上的HTTP协议
get和post几乎没有任何区别只有名字不一样。
2,如果是基于RFC规范的,理论上get和post具有相同语法的,但是有不同的语义。get是用来获取数据的,post是用来发送数据的,其他方面没有区别。
实现上,各种浏览器,就是这个规范的实现者。
常见的那些不同:1,get 的数据在url是可见的,post请求不显示在url中。(注意url不是地址栏)
2,get对长度是有限制的,post长度是无限的。
3,get请求的数据可以收藏为书签,post请求道德数据不可收藏为书签。
4,get请求后,按后退按钮,刷新按钮无影响,post数据会被重新提交。
5,get编码类型:application/x-www-form-url,post的编码类型:有很多种。
encodeapplication/x-www-form-urlencoded multipart/form-data
6,get历史参数会被保留在浏览器里,psot不会保存在浏览器中的。
7,get只允许ASCII.post没有编码限制,允许发二进制的。
8,get与post相比,get安全性较差,
⑦哪些资源算跨域请求的资源?
1,后端的接口的数据
2,其他域的cookie
3,其他域的缓存
什么是其他的域?怎么算跨域?
页面本身:有协议(http/https),域名,端口,要请求的数据 :http://baidu.com:80
协议,域名,端口这三个,有任意一个不一样就算跨域。
解决跨域问题:
1,后端配合进行跨域。
jsonp(正常的情况,返回的数据都是json格式,jsonp是一种特殊的格式。)
```
<script>
$.ajax({
url:"http://developer.duyiedu.com/edu/testJsonp",
type:"get",
dataType:"jsonp",
success:function(data){
console.log(data)
}
})
</script>
```
jsonp跨域只能使用get方法,如果设置的post方法,jquery会自动转为get方法。
后端设置access-control-allow-origin属性以跨域
2,后端不配合进行跨域。
iframe (只能显示,不能控制)、
通过后端代理(自己的后端)
网友评论