美文网首页
Web前后端交互方式

Web前后端交互方式

作者: Doraemon_L | 来源:发表于2016-07-17 17:00 被阅读0次

HTTP长连接

HTTP1.1协议具备的,TCP连接一直不断保持着,Connection:keep-alive头来验证是否支持。

Web交互方式

普通轮询:普通的前后端通信方式,请求中多半无用,可以使用HTTP长连接技术;可以使用AJAX(XMLHttpRequest类),也可以使用ifram方式请求;实时性差。

长轮询:对于有实时性要求的场景(其实在两次连接之间,还是会有实时性问题),客户端发送请求后,后端hold住,有数据时才返回,客户端收到后断开,再启用新的请求进行连接,通过这样的方式模拟服务端推送。节省了反复建立连接的开销,但是服务器端会一直while保持着连接消耗资源,服务器端需要设置好超时时间(set_time_limit),有数据时返回(flush&ob_flush)超时时间内如果没有数据返回,则需要跳出断开连接,以免死循环。这种模式被称为反向AJAX/Comet,由服务器端进行数据实时推送。问题是:服务端开销依然很大,每次通信都需要一次请求,HTTP请求头中带大量Cookie等信息,浪费带宽。IE不支持AJAX,因此需要iframe代替。

SSE(Server-Sent Evetns):HTML5的Comet方案。SSEAPI创造到服务器端的单向连接,服务端推送的模式,服务器响应的MINE必须是“text/event-stream”,用于服务器端给客户端实时传数据,只进行一次连接,则后续服务端可以一直传送数据。

数据流:在长轮询的基础上,收到数据后不要断开连接,继续接受服务端数据;由于数据流是不断的,所以需要客户端自己来处理解析数据和管理游标,增量处理获得的数据,增加了逻辑复杂度。

Websocket:替代长轮询方式,减少开销。

相关文章

  • 【学习】其他

    Web Http:Http协议 Http/2 Http长连接前后端交互:交互方式 WebSocket Aja...

  • Web前后端交互方式

    HTTP长连接 HTTP1.1协议具备的,TCP连接一直不断保持着,Connection:keep-alive头来...

  • SpringBoot | 第十六章:web应用开发

    前言 前面讲了这么多章节,都没有涉及到前端web和后端交互的部分。因为作者所在公司是采用前后端分离方式进行web项...

  • springboot 使用swagger自动生成API文档

    如今微服务是趋势,微服务下的web开发通常采用前后端分离的方式.前后端通过API进行交互,Swagger ui,可...

  • 前后端交互如何保证安全性?

    前言 web与后端,andorid与后端,ios与后端,像这种类型的交互其实就属于典型的前端与后端进行交互。在与B...

  • json-server模拟服务端REST接口

    在web项目开发中,前端完成静态页面的开发后,后端迟迟未给到接口,会导致前、后端数据交互的开发流程中停滞。可以根据...

  • HTTP必学必会

    做Web开发最离不开的就是HTTP协议了.前后端交互的基本方式就是发送和响应HTTP请求,所以前端和后端都要了解H...

  • 网络安全交互的常用方式

    后端经常需要与web,andorid,ios交互,有的时候前后端交互的请求和响应数据的进行明文传输,接口也没有做严...

  • 前后端交互(javaweb)

    前段后台交互的学习(Java web) 标签 : 前后端交互 Javaweb 下面介绍了一些关于交互的细节: 请...

  • Nginx反向代理配置

    首先部署实施后端Web服务器1)部署后端Web1服务器后端Web服务器可以简单使用yum方式安装httpd实现We...

网友评论

      本文标题:Web前后端交互方式

      本文链接:https://www.haomeiwen.com/subject/foxpjttx.html