浏览器可以直接请求 websocket

一、原生支持

浏览器原生支持 WebSocket 协议,这使得开发者可以直接在 JavaScript 代码中使用 WebSocket 来建立与服务器的双向通信通道。

javascript 复制代码
const socket = new WebSocket("ws://localhost:8080");

socket.addEventListener("open", function (event) {

  console.log("WebSocket连接已打开");

  socket.send("你好,服务器!");

});

socket.addEventListener("message", function (event) {

  console.log("收到消息:", event.data);

});

socket.addEventListener("close", function (event) {

  console.log("WebSocket连接已关闭");

});

socket.addEventListener("error", function (event) {

  console.log("WebSocket出错:", event);

});

二、跨域考虑

不过,当 WebSocket 请求涉及跨域时,浏览器会进行安全检查。与传统的 HTTP 请求跨域类似,需要服务器正确配置跨域头信息(如`Access-Control-Allow-Origin`等)来允许跨域的 WebSocket 连接。否则,浏览器可能会阻止 WebSocket 握手,导致连接失败。

例如:如果服务器没有正确配置跨域策略,在浏览器控制台可能会看到类似"WebSocket handshake: Unexpected response code: 403"的错误信息,表示 WebSocket 握手过程中出现问题,服务器返回了禁止访问(403)的状态码。

相关推荐
哑巴语天雨1 小时前
前端面试-网络协议篇
websocket·网络协议·http·面试·https
绿色果酱2 小时前
利用Postman和Apipost进行WebSocket调试和文档设计
websocket·测试工具·yapi·postman
ktkiko113 小时前
Websocket——心跳检测
网络·websocket·网络协议
GGGGGGGGGGGGGG.3 小时前
hapxory-ACL基础介绍及案例
运维·服务器·网络
小梁不秃捏4 小时前
HTTP 常见状态码技术解析(应用层)
网络·网络协议·计算机网络·http
网安加云课堂4 小时前
课程分享 | 安全系统建设的挑战与解决方案
网络·安全·web安全
learning-striving5 小时前
eNSP下载安装(eNsp、WinPcap、Wireshark、VirtualBox下载安装)
网络·计算机网络·华为·路由器·ensp·交换机
黑客Ela6 小时前
网络安全营运周报
网络·安全·web安全
挣扎与觉醒中的技术人6 小时前
网络安全入门持续学习与进阶路径(一)
网络·c++·学习·程序人生·安全·web安全
技术小齐6 小时前
网络运维学习笔记 017HCIA-Datacom综合实验01
运维·网络·学习