websocket协议

vue-cli3-配置接口映射

跟風遠走 提交于 2019-11-28 10:42:10
一、参考文档 1. https://cli.vuejs.org/zh/config/#devserver-proxy 2. https://github.com/chimurai/http-proxy-middleware#proxycontext-config 二. 使用步骤 1.新建 在项目文件夹下面,新建vue.config.js,vue会自动识别 2.配置 module.exports = { // 模块导出 devServer: { // 开发服务器 proxy: { // 代理 '': { target: 'http://uat.kpbyd.com/', // 代理路径 changeOrigin: true, // 是否跨域 ws: true // 代理webSocket,WebSocket是一种在单个TCP连接上进行全双工通信的协议。 // 全双工的系统可以用一般的双向车道形容。两个方向的车辆因使用不同的车道,因此不会互相影响。 } } } } 3. 其他更多的配置,根据需要查看参考文档,毕竟每个项目需求不同 4. 配置完成之后,重新运行 npm run serve 来源: CSDN 作者: m0_37616866 链接: https://blog.csdn.net/m0_37616866/article/details/86589355

认识HTML5的WebSocket

♀尐吖头ヾ 提交于 2019-11-28 09:57:35
在HTML5规范中,我最喜欢的Web技术就是正迅速变得流行的WebSocket API。WebSocket提供了一个受欢迎的技术,以替代我们过去几年一直在用的Ajax技术。这个新的API提供了一个方法,从客户端使用简单的语法 有效地推动消息到服务器。让我们看一看HTML5的WebSocket API:它可用于客户端、服务器端。而且有一个优秀的第三方API,名为Socket.IO。 一、什么是WebSocket API? WebSocket API是下一代客户端-服务器的异步通信方法。该通信取代了单个的TCP套接字,使用ws或wss协议,可用于任意的客户端和服务器程序。 WebSocket目前由W3C进行标准化。WebSocket已经受到Firefox 4、Chrome 4、Opera 10.70以及Safari 5等浏览器的支持。 WebSocket API最伟大之处在于服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息。WebSocket并不限于以Ajax(或XHR)方式通信,因为 Ajax技术需要客户端发起请求,而WebSocket服务器和客户端可以彼此相互推送信息;XHR受到域的限制,而WebSocket允许跨域通信。 Ajax技术很聪明的一点是没有设计要使用的方式。WebSocket为指定目标创建,用于双向推送消息。 二、WebSocket API的用法

一文读懂前端技术演进:盘点Web前端20年的技术变迁史

老子叫甜甜 提交于 2019-11-28 05:58:27
本文原文由作者“司徒正美”发布于公众号“前端你别闹”,即时通讯网收录时有改动,感谢原作者的分享。 1、引言 1990 年,第一个Web浏览器的诞生;1991 年,WWW诞生,这标志着前端技术的开始。 在这将近20年的前端发展史中,我们经历了从最早的纯静态页面,到JavaScript跨时代的诞生;从PC端到移动端;从依赖后端到前端可自由打包开发;从早期的网景Navigator浏览器到现在各家浏览器百花齐放…… 我们经历了前端的洪荒时代、 Prototype 时代、jQuery时代 、后jQuery时期、三大框架割据时代,这其中均是由国外开发者主导,直到如今的小程序时代,才是中国开发者独创的。 这是漫长的技术储备下的成果,最终促成了良好的技术成长收获。期间的前端发展之路,崎岖艰难。 (本文同步发布于: http://www.52im.net/thread-2719-1-1.html ) 2、相关文章 《 小程序技术始于微信?来看看移动端小程序技术的前世今生! 》 《 盘点主流移动端跨平台UI技术:实现原理、技术优劣、横向对比等 》 《 最火移动端跨平台方案盘点:React Native、weex、Flutter 》 《 快速了解Electron:新一代基于Web的跨平台桌面技术 》 3、洪荒时代(1990~1994年) 在1990~1994年期间,前端界发生的大事有:WWW(World

【Node/JavaScript】论一个低配版Web实时通信库是如何实现的1( WebSocket篇)

不羁的心 提交于 2019-11-27 23:59:03
引论 simple-socket是我写的一个"低配版"的Web实时通信工具( 相对于Socket.io ),在参考了相关源码和资料的基础上,实现了前后端实时互通的基本功能 选用了WebSocket ->server-sent-event -> AJAX轮询这三种方式做降级兼容,分为simple-socket-client和simple-socket-server两套代码, 并实现了最简化的API: 前后端各自通过connect事件触发,获取各自的socket对象 前端通过socket.emit('message', "data")发送消息; 服务端通过socket.on('message', function (data) { //... })接收 服务端通过socket.emit('message', "data")发送消息; 前端通过socket.on('message', function (data) { //... })接收 为方便细节的理解,未直接引用ws,eventsource,sockjs, http:// engine.io 等已有的工具库 下面把编码的过程和细节,以及代码予以记录 github 仓库地址 https://github.com/penghuwan/simple-socket npm 命令 npm i simple-socket-serve

Netty源码分析-Websocket之WebSocketServerHandshaker

只谈情不闲聊 提交于 2019-11-27 12:45:08
public abstract class WebSocketServerHandshaker { protected static final InternalLogger logger = InternalLoggerFactory.getInstance(WebSocketServerHandshaker.class); private static final ClosedChannelException CLOSED_CHANNEL_EXCEPTION = ThrowableUtil.unknownStackTrace( new ClosedChannelException(), WebSocketServerHandshaker.class, "handshake(...)"); private final String uri; private final String[] subprotocols; private final WebSocketVersion version; private final int maxFramePayloadLength; private String selectedSubprotocol; public ChannelFuture handshake(Channel channel, FullHttpRequest req)

Http,Https,socket,websocket,TCP,UDP

血红的双手。 提交于 2019-11-27 12:33:42
Http 什么是http? HTTP(HyperText Transfer Protocol) 超文本传输协议 http用来做什么? 当在客户端输入URL地址,获取服务器的资源,内容显示在浏览器的网页上。使用HTTP协议作为规范,完成从客户端到服务端一系列运作流程。 http的运作流程? http的有什么特点? 1. 无状态协议。 http协议自身不对请求和响应之间的通信状态进行保存。意思是客户端对服务端进行了一次http请求,之后想知道这次请求了什么,服务端是不进行保存的,不知道之前请求了什么。 2. get和post区别 什么是https? HTTPS全称Hypertext Transfer Protocol Secure。超文本传输安全协议。 http和https的关系是什么? http协议以明文方式发送内容,不提供数据加密。为了解决http的这一缺点 ,在http的基础上加入了ssl协议,依靠证书来验证服务器身份,并为浏览器和服务器之间通信加密。 简单来说https是http的安全版。 什么是socket? socket套接字是一个抽象层。传输层连接有两个端点,这个端点叫套接字socket。根据RFC793定义:端口号拼接IP地址就构成了套接字。 所谓套接字,就是一个通信端点,每个套接字有一个套接字序号,比如ip是210.37.145.1,端口号是23,那么套接字就是210

Websocket和PHP Socket编程

↘锁芯ラ 提交于 2019-11-27 06:44:30
谈谈php中使用websocket-实例 http://blog.csdn.net/xueling022/article/details/52902358 本来是搜一些html5 websocket资料看的,结果被引去看了php的socket编程。下面是一些简单的例子,在命令行运行php脚本就行 [命令行运行PHP]PHP中有一个php.exe文件,可以用命令执行PHP脚本。如:D:/php.exe -f F:/test.php ; 可以使用php.exe -h查看更多参数 : server端: <?php /** * 服务器端代码 * */ //确保在连接客户端时不会超时 set_time_limit(0); //设置IP和端口号 $address = "localhost"; $port = 1234; //调试的时候,可以多换端口来测试程序! //创建一个SOCKET if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) { echo "socket_create() 失败的原因是:" . socket_strerror(socket_last_error()) . "/n"; die; } //阻塞模式 if (socket_set_block($sock) == false) {

基于springboot的websocket聊天室

倖福魔咒の 提交于 2019-11-26 23:49:00
WebSocket入门 1.概述 1.1 Http #http简介 HTTP是一个应用层协议,无状态的,端口号为80。主要的版本有1.0/1.1/2.0. #http1.0/1.1/2.0 1.HTTP/1.* 一次请求-响应,建立一个连接,用完关闭; 2.HTTP/1.1 串行化单线程处理,可以同时在同一个tcp链接上发送多个请求,但是只有响应是有顺序的,只有上一个请求完成后,下一个才能响应。一旦有任务处理超时等,后续任务只能被阻塞(线头阻塞); 3.HTTP/2 并行执行。某任务耗时严重,不会影响到任务正常执行 1.2 WebSocket #WebSocket简介 Websocket是html5提出的一个协议规范,是为解决客户端与服务端实时通信。本质上是一个基于tcp,先通过HTTP/HTTPS协议发起一条特殊的http请求进行握手后创建一个用于交换数据的TCP连接.WebSocket同HTTP一样也是应用层的协议,但是它是一种双向通信协议。 #WebSocket连接过程 1. 浏览器、服务器建立TCP连接,三次握手。这是通信的基础,传输控制层,若失败后续都不执行。 2. TCP连接成功后,浏览器通过HTTP协议向服务器传送WebSocket支持的版本号等信息。(开始前的HTTP握手) 3. 服务器收到客户端的握手请求后,同样采用HTTP协议回馈数据。 4.

Swoole学习笔记——timer::tick和timer::after

流过昼夜 提交于 2019-11-26 19:31:49
一、官网tick和after (1)Timer::tick 设置一个间隔时钟定时器,与after定时器不同的是tick定时器会 持续触发 ,直到调用Timer::clear清除。 函数原型 int Swoole\Timer::tick(int $msec, callable $callback, ...$params); 别名:swoole_timer_tick 参数 ①:$msec 指定时间,单位为毫秒。如1000表示1秒,4.2.10以下版本最大不得超过 86400000 ②:$callback_function 时间到期后所执行的函数,必须是可以调用的 ③:可以使用匿名函数的use语法传递参数到回调函数中 ④:定时器仅在当前进程空间内有效 ⑤:定时器是纯异步实现的,不能与阻塞IO的函数一起使用,否则定时器的执行时间会发生错乱 回调函数 定时器触发的回调函数接受1+若干个参数。 function callbackFunction(int $timer_id, ...$params); 参数 $timer_id 定时器的ID,可用于Timer::clear清除此定时器 $params 由Timer::tick传入的第三个参数$param,此参数也为可选参数 (2)Timer::after 在指定的时间后执行函数。 函数原型 int Swoole\Timer::after(int

java版Web Socket,实现消息推送

白昼怎懂夜的黑 提交于 2019-11-26 14:13:49
# web socket是什么? WebSocket协议是基于TCP的一种新的网络协议。 它实现了浏览器与服务器全双工(full-duplex)通信, 允许服务器主动发送信息给客户端 。 ## 用途 实时Web应用的解决方案,实现Web的实时通信。 说的再直白点, html的消息推送 。 假如你有一个页面,数据不定期更改,通常的做法就是轮询,客户端不停地向服务器请求最新的数据。 当有了web socket,数据变动时 让服务器通知客户端,启不是很美妙? ## 请求示例 (1) 默认端口是80和443(ssl)。 (2) 协议标识符是ws和ws(ssl)。 (3) 请求报文示例 General -------------------------------------------- Request URL:ws://localhost:8080/j2ee-websocket/websocket/1 Request Method:GET Status Code:101 Switching Protocols --------------------------------------------- Response Headers --------------------------------------------- Connection:upgrade Date:Tue, 05