socket和http间的区别

2025-01-12 16:43:58
推荐回答(3个)
回答1:

最大区别socket是网络层,http是应用成。。
socket是一个程序组件,它支持TCP,UDP等网络通讯协议,也就是通过socket这个东西你可以和任何互联网或局域网上的计算机通讯。。。TCP,UDP是一个网络层协议,网络层协议不管你发的内容是啥,他只负责把你想法的东西发到对面,发的是啥,他完全不管,因为他不是应用层。。。。
http是应用层协议,在socket的TCP层之上,他是管你发送的内容是什么的,比如你发的是啥,图片还是文字还是视频数据流,发成功了没有,用什么语言发,都做了详细的定义,这样可以保证写软件的人只要按照约定处理数据,就能得到想要的结果。。。
通讯的目的就是应用,所以应用是顶层,否则你发的是坨屎,还是别的什么,无从知道,因为数据都是二进制数据流,必须描述清楚,约定好。。。

回答2:

  socket连接和http连接的区别
  HTTP协议:简单对象访问协议,对应于应用层 ,HTTP协议是基于TCP连接的
  tcp协议: 对应于传输层
  ip协议: 对应于网络层
  TCP/IP是传输层协议,主要解决数据如何在网络中传输;而HTTP是应用层协议,主要解决如何包装数据。
  Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,才能使用TCP/IP协议。
  http连接:http连接就是所谓的短连接,即客户端向服务器端发送一次请求,服务器端响应后连接即会断掉;
  socket连接:socket连接就是所谓的长连接,理论上客户端和服务器端一旦建立起连接将不会主动断掉;但是由于各种环境因素可能会是连接断开,比如说:服务器端或客户端主机down了,网络故障,或者两者之间长时间没有数据传输,网络防火墙可能会断开该连接以释放网络资源。

回答3: