Server-Sent Events (SSE) 实现流式输出

在 ChatGPT 出现之前,大部分 Web 接口都是“请求-响应”模式:用户发一个请求,服务器处理完(可能需要几秒),然后一次性把结果扔回来。但在大模型时代,生成一段长文本可能需要 10 秒甚至更久。如果让用户盯着空白屏幕等 10 秒,体验会非常糟糕。于是,SSE (Server-Sent Events) 再次回到了聚光灯下。它允许服务器一边生成内容,一边通过长连接把数据“推”给前端,也就是我们看到的“打字机效果”。

1.什么是 SSE?

SSE(Server-Sent Events)是一种基于 HTTP 的单向通信机制。

阅读更多

实现页面级权限控制

方案:后端返回完整路由结构,前端动态组件映射

1. 设计思路
  1. 初始状态: 路由表中只有“登录页”、“404”等基础静态路由页面。
  2. 登录: 用户登录,获取 Token。
  3. 获取权限: 前端拿着 Token 请求后端接口,后端返回该用户的菜单树(路由表)。
阅读更多

WebSocket学习+心跳检测+断线重连

在 HTTP协议中,客户端必须先发起请求,服务器才能响应。这就像发邮件,你发一封,对方回一封。但如果需要开发一个即时聊天室、股票大盘或者实时视频监控的功能,让客户端每隔几秒钟问一次服务器“有新消息吗?”(轮询),既浪费带宽,延迟又高。WebSocket是解决这个问题的最优解。

一、 什么是 WebSocket?

阅读更多

for...in 和 for...of 的区别

用js刷题的时候,使用for…in遍历一个数组,结果输出的是它的索引?

for...in 遍历的是“键”(Key/Index) for...of 遍历的是“值”(Value)

  • for…in:也就是 “Index”,主要用于对象(Object)的属性遍历。
  • for…of:也就是 “Object Value”,主要用于数组(Array)或可迭代对象的元素遍历。
阅读更多