js 面试 什么是WebSockets?HTTP和HTTPS有什么不同?web worker是什么?

概念:

webSocket 是一种在客户端和服务端之间建立持久连接的协议,它提供全双工通信通道,是服务器可以主动向客户端推送数据,同时也可以接受客户端发送的数据。

1 webSocket与https区别?

在网络通信中,WebSocket协议和HTTPS协议都扮演着重要的角色。

WebSocket协议是一种基于TCP协议的实时双向通信协议

HTTPS协议是一种基于TLS/SSL加密的安全传输协议

 1-1 WebSocket协议的优点和特点

  • 实时性:WebSocket协议支持客户端和服务器之间的实时双向通信,可以实现即时聊天、实时推送等功能。
  • 低延迟:由于WebSocket协议使用长连接,不需要频繁地建立和关闭连接,可以减少通信延迟。
  • 轻量级:WebSocket协议使用更简洁的数据帧格式,减少了通信的开销。

1-2 HTTPS协议的特点
 HTTPS协议的基本原理
HTTPS协议是HTTP协议的安全版本,通过使用TLS/SSL加密通信来保障数据的安全传输。客户端和服务器之间的通信会经过握手阶段来建立安全连接,并使用加密算法对数据进行加密。

 HTTPS协议的优点和特点
安全性:HTTPS协议使用TLS/SSL加密通信,可以有效保护数据的安全性,防止数据被篡改或窃取。
可信性:HTTPS协议使用数字证书对服务器进行身份验证,可以确保通信的双方是可信的。
兼容性:HTTPS协议与HTTP协议兼容,可以无缝替换使用。
 HTTPS协议的适用场景
网络支付:HTTPS协议能够保护用户的支付信息,防止信息泄露和篡改。
用户认证:HTTPS协议能够保证用户在登录过程中的身份安全,防止密码被盗用。
敏感数据传输:HTTPS协议适用于需要保护敏感数据传输的场景,如个人隐私信息。

区别:

HTTPS协议使用短连接,每次通信都需要重新建立连接,会增加通信延迟。而且HTTPS协议使用HTTP协议进行通信,需要进行更多的数据解析和处理,导致传输效率相对较低

由于WebSocket协议使用长连接,不需要频繁地建立和关闭连接,可以减少通信延迟。同时,WebSocket协议使用二进制帧格式进行数据传输相比https于文本格式,可以更高效地传输数据

2 共同点
基于TCP协议的安全通信

WebSocket协议和HTTPS协议都是基于TCP协议的,可以保证通信的可靠性和稳定性。

数据加密保障通信安全

WebSocket协议和HTTPS协议都支持数据的加密传输,保障通信的安全性。WebSocket协议使用TLS/SSL加密通信,而HTTPS协议则使用更加严格的TLS/SSL加密。

支持客户端与服务器之间的实时双向通信

WebSocket协议和HTTPS协议都支持客户端和服务器之间的双向通信,但在实现方式上有所不同。WebSocket协议使用长连接,可以实现实时的双向通信,而HTTPS协议使用短连接,通信是单向的,需要客户端主动发起请求。

2 webSocket与http区别?

使用场景: WebSocket 适用于需要低延迟和实时性的应用场景,如聊天应用、在线游戏、股票市场数据更新等

3 web Worker 定义与作用?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2814558.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Acceptor监听套接字管理类实现(模块七)

目录 类功能 类定义 类实现 编译测试 类功能 类定义 // 监听套接字管理类 class Acceptor { private:Socket _socket; // 用于创建监听套接字EventLoop *_loop; // 用于对监听套接字进行事件监控Channel _channel; // 用于对监控套接字进行事件管理using AcceptCallback…

11 PLL IP核

PLL IP 核简介 锁相环(PLL)作为一种反馈控制电路,其特点是利用外部输入的参考信号来控制环路内部震荡信号的频率和相位。因为锁相环可以实现输出信号频率对输入信号频率的自动跟踪,所以锁相环通常用于闭环跟踪电路。锁相环在工作…

36.云原生之SpringCloud+k8s实践

云原生专栏大纲 文章目录 SpringCloudk8s介绍spring-cloud-kubernetes服务发现配置管理负载均衡选主 spring-cloud-bookinfo案例构建项目环境配置namespace部署与验证productpagegatewaybookinfo-admindetailsratingsreviewsreviews-v1reviews-v2 总结 SpringCloudk8s介绍 ht…

React UI框架Antd 以及 如何按需引入css样式配置(以及过程中各种错误处理方案)

一、react UI框架Antd使用 1.下载模块 npm install antd -S 2.引入antd的样式 import ../node_modules/antd/dist/reset.css; 3.局部使用antd组件 import {Button, Calendar} from antd; import {PieChartTwoTone} from ant-design/icons; {/* 组件汉化配置 */} import l…

SORA 到底是什么?如何用bitget wallet购买?

什么是SORA? SORA 是一种模因币,灵感来自 OpenAI 最新的人工智能模型 Sora,它巧妙地根据文本输入生成视频。 SORA 诞生于加密社区内人工智能项目的热潮中,利用 OpenAI 的公告推出了一种独特且时尚的数字资产。正如 memecoin 网站…

【管理咨询宝藏资料28】某信息技术有限公司战略规划报告

本报告首发于公号“管理咨询宝藏”,如需阅读完整版报告内容,请查阅公号“管理咨询宝藏”。 【管理咨询宝藏资料28】某信息技术有限公司战略规划报告 【关键词】战略规划、对标研究、管理咨询 【文件核心观点】 - 使企业实现商业流程整合,构…

宏集小型PLC应用于浮动封盖机

导言 仅通过1个控制面板和1个紧凑型PLC控制自动化设备中来自不同制造商的13种不同电机,听起来难以置信!但这是宏集科技已经落地的合作项目! 案例概况 客户:TREPAK 合作伙伴:SDT 应用:封盖机 应用产品&…

UE5 UE4 自定义插件自动开启关联插件(plugin enable)

在我们自己编写UE4、UE5的插件时,常常需要开启相关联的插件进行功能编写。 例如:UE4/5 批量进行贴图Texture压缩、修改饱和度_ue4批量修改纹理大小-CSDN博客 而让插件使用者每次使用时,依次进行开启其他相关联插件确实有些麻烦。 如何只需要…

【数据结构】数组

第一章、为什么数组的下标一般从0开始编号 提到数组,读者肯定不陌生,甚至还会很自信地说,数组很简单。编程语言中一般会有数组这种数据类型。不过,它不仅是编程语言中的一种数据类型,还是基础的数据结构。尽管数组看起…

js 面试 http 与 https, 长连接,http状态码,哪三次握手,在浏览器地址栏键入URL回车之后过程?

1 概念 http是超文本传输协议,信息明文传输。 https是安全超文本传输协议, 以安全为目标的HTTP通道,在HTTP的基础上通过身份认证和传输加密阶段保证了传输过程的安全性. https:主要是增加了TLS(Transport Layer Security 安全传输层协议)/…

超声波清洗机对眼镜有伤害吗?警惕清洗眼镜禁忌!

近年来,随着人们对健康生活要求的提升,超声波清洗机在市场上的受欢迎程度逐渐攀升,产品的多样性也让人眼花缭乱。近期收到了大量读者的一些私信,其中很多人询问使用超声波清洗机会对眼镜有伤害吗、超声波清洗机是不是智商税、超声…

如何使用Docker部署WBO容器并实现固定公网地址访问本地白板界面

🔥博客主页: 小羊失眠啦. 🎥系列专栏:《C语言》 《数据结构》 《C》 《Linux》 《Cpolar》 ❤️感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默&…

【Git教程】(六)分支合并 —— 合并过程,各类合并冲突及解决思路 ~

Git教程 分支 1️⃣ 合并过程中发生的事2️⃣ 冲突3️⃣ 编辑冲突4️⃣ 冲突标志5️⃣ 解决编辑冲突6️⃣ 内容冲突7️⃣ 快进合并8️⃣ 第一父级提交历史9️⃣ 棘手的合并冲突🌾 总结 使用 merge 命令来进行分支合并是 Git 中最重要的操作之一。虽然这一操作的底层…

Window10安装ruby

最好的方法,使用rubyinstaller,即在Downloads。 这是官方推荐的安装方式 通常来说我们会下载64位的 下载完后执行下载的exe即可。在最后一步会提示让安装gem,选则安装即可。 然后就可以在控制台进行测试了。

UE蓝图 宏(Macro)节点和源码

系列文章目录 UE蓝图 Get节点和源码 UE蓝图 Set节点和源码 UE蓝图 Cast节点和源码 UE蓝图 分支(Branch)节点和源码 UE蓝图 入口(FunctionEntry)节点和源码 UE蓝图 返回结果(FunctionResult)节点和源码 UE蓝图 函数调用(CallFunction)节点和源码 UE蓝图 序列(Sequence)节点和源…

JWT基于Cookie的会话保持,并解决CSRF问题的方案

使用JWT进行浏览器接口请求,在使用Cookie进行会话保持传递Token时,可能会存在 CSRF 漏洞问题,同时也要避免在产生XSS漏洞时泄漏Token问题,如下图在尽可能避免CSRF和保护Token方面设计了方案。 要点解释如下: 将JWT存入…

PclSharp--计算AABB包围盒体积2

一、AABB包围盒 AABB包围盒即轴对齐包围盒,就是包围盒对齐坐标轴。计算相对简单,在要求不精细的情况下,这种包围盒是够用的。 MomentOfInertiaEstimation 是 PCL中的一个类,用于计算点云中物体的矩。它可以提供点云物体的三个主…

【HarmonyOS】鸿蒙开发之Video组件——第3.7章

Video组件内VideoOptions属性简介 src:设置视频地址。currentProgressRate:设置视频播放倍速,参数说明如下: number|string:只支持 0.75 , 1.0 , 1.25 , 1.75 , 2.0 。P…

IDEA利用鼠标调整字体大小

就可以按住ctrl和鼠标调节代码字体的大小啦! 如果有用,记得给我来个赞~ 谢啦!

Flutter中高级JSON处理:使用json_serializable进行深入定制

Flutter中高级JSON处理 使用json_serializable库进行深入定制 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at: https://jclee95.blog.csdn.netEmail: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/article/details/1363…