zoukankan      html  css  js  c++  java
  • HTTP、Scoket网络协议浅解

    协议:协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则。

    HTTP协议:超文本传输协议,它允许将超文本标记语言(HTML)文档从web服务器传送到客户端的浏览器。HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端模型。

    TCP/IP和HTTP和socket的区别:TCP/IP协议是传输层协议、socket则是对TCP/IP协议的封装和应用主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。

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

    get和post方法的区别:

    1、GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如XXXXX?name=I&id=2.post方法则是吧提交的数据放在HTPP包的Body中。

    2、GET提交的数据有大小限制(浏览器对URL的长度有一定限制),而POST方式则无数据大小限制。

    3、GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.From来获取变量的值。

    4、GET方式提交数据,会带来安全问题,比如一个登陆界面,通过GET方式提交数据时,用户名和密码就会出现在URL上,容易泄露。POST则不会。

  • 相关阅读:
    MVC3、如何应用EntityFramework 连接MySql 数据库 Kevin
    DEV EXPRESS Summary Footer 不显示 Kevin
    装饰模式 Kevin
    Dev 控件 GridControl 控件 二次绑定数据源的问题。 Kevin
    System.InvalidOperationException 异常 Kevin
    LINQ to XML Kevin
    代理模式——代码版“吊丝的故事” Kevin
    VS2012 中的设备 面板 Kevin
    maven 学习笔记(三)创建一个较复杂的 eclipse+android+maven 工程
    maven 学习笔记(一)eclipse+android+maven
  • 原文地址:https://www.cnblogs.com/shaoting/p/4872676.html
Copyright © 2011-2022 走看看