http协议SSE EventSource Example 前端+nodejs实现ChatGPT打字动画效果
前端代码
nodejs 服务端代码
// Server-Sent Events node.js demo示例
var http = require("http");
http.createServer(function (req, res) {
var fileName = "." + req.url;
if (fileName === "./sse") {
res.writeHead(200, {
"Content-Type":"text/event-stream",
"Cache-Control":"no-cache",
"Connection":"keep-alive",
"Access-Control-Allow-Origin": '*',
});
res.write("retry: 10000\n");
res.write("event: connecttime\n");
res.write("data: " + (new Date()) + "\n\n");
res.write("data: " + (new Date()) + "\n\n");
interval = setInterval(function () {
res.write("data: " + (new Date().toLocaleTimeString()) + "\n\n");
}, 1000);
req.connection.addListener("close", function () {
clearInterval(interval);
}, false);
}
// }).listen(8001, "127.0.0.1");
}).listen(8001);
console.log('nodejs http SSE demo...');
相关主题
- nodejs SSE 类似chatGPT打字效果
- nodejs EventSource demo 教程代码
- nodejs SSE + EventSource 实现打字动画效果
- http stream流式API 一个片段一片段的发送文本数据给前端
参考
https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events
https://www.ruanyifeng.com/blog/2017/05/server-sent_events.html