java网络

1. http响应码301,302代表什么,有什么区别

  • 301:永久重定向

  • 302:暂时重定向

它们的区别是:301对搜索引擎优化更有利,302有被提示未网络拦截的风险

2. forward和redirect的区别

forward是转发,redirect是重定向

  • 地址栏url显示:forward地址栏url不会改变,redirect地址栏url会改变

  • 数据共享:forward可以共享request中的数据,redirect不能共享

  • 效率:forward的效率比redirect高

3. 简述tcp,udp的区别

tcp和udp是OSI模型中的运输层中的协议,tcp提供可靠的通信传输,而udp则常被用于让广播和细节控制交给应用的通信传输

两者的区别大致如下:

  • tcp面向连接,udp面向非连接即发送数据前不需要建立连接

  • tcp提供可靠的数据传输,udp无法保证

  • tcp面向字节流,udp面向报文

  • tcp数据传输快,udp数据传输慢

4. tcp为什么要三次握手,两次不行吗,为什么?

如果采用两次握手,那么只要服务器发出确认数据包就会建立连接,但由于客户端此时并未响应服务器端的请求,那此时服务器端就会一直在等待客户端,这样服务器端就白白浪费了一定的资源。若采用三次握手,服务器端没有收到来自客户端的再此确认,则就会知道客户端并没有要求建立请求,就不会浪费服务器的资源。

5. 说一下tcp粘包是怎么产生的

tcp粘包可能会发生在发生端和接收段,分别来看两端各种发生粘包的原因:

  • 发送端粘包:发送端需要等缓冲区满再发送出去,造成粘包

  • 接收端粘包:接收段不及时接收缓冲区的包,造成多个包接收

6. OSI的七层模型都有哪些?

  • 物理层

  • 数据链路层

  • 网络层

  • 传输层

  • 会话层

  • 表示层

  • 应用层

7. get和post请求有哪些区别

  • get请求会被浏览器主动缓存,post请求不会

  • get传递参数有大小限制,而post没有

  • post传递参数更安全,而get的参数会明文的限制在url,而post不会

8. 如何实现跨域?

实现跨域有以下几种方案:

  • 服务器端运行跨域 设置 CORS 等于 *;
  • 在单个接口使用注解 @CrossOrigin 运行跨域;
  • 使用 jsonp 跨域;

9. 说一下JSONP的实现原理

jsonp:JSON with Padding,它是利用script的src标签连接可以访问不同源的特性,加载远程返回的“JS”函数来执行的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值