重构 async
This commit is contained in:
@@ -1,18 +1,21 @@
|
||||
let ws = websocket();
|
||||
let shouldExit = false;
|
||||
while (!shouldExit) {
|
||||
let data = ws.readText();
|
||||
switch (data) {
|
||||
case "exit":
|
||||
shouldExit = true;
|
||||
break;
|
||||
case "panic":
|
||||
throw Error("错误");
|
||||
case "date":
|
||||
ws.writeText(new Date().toJSON())
|
||||
break
|
||||
default:
|
||||
ws.writeText("收到信息:" + data)
|
||||
break;
|
||||
async function run() {
|
||||
let ws = websocket();
|
||||
let shouldExit = false;
|
||||
while (!shouldExit) {
|
||||
let data = await ws.readText();
|
||||
switch (data) {
|
||||
case "exit":
|
||||
shouldExit = true;
|
||||
break;
|
||||
case "panic":
|
||||
throw Error("错误");
|
||||
case "date":
|
||||
ws.writeText(new Date().toJSON())
|
||||
break
|
||||
default:
|
||||
ws.writeText("收到信息:" + data)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
run().then(r => {});
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
routes:
|
||||
- path: "sender"
|
||||
js:
|
||||
exec: "sender.js"
|
||||
- path: "event"
|
||||
js:
|
||||
exec: "event.js"
|
||||
@@ -1,23 +1,28 @@
|
||||
let name=request.getQuery("name")
|
||||
if (name===""){
|
||||
throw Error(`Missing name "${name}"`)
|
||||
const name = (await request.getQuery("name"))?.trim();
|
||||
|
||||
if (!name) {
|
||||
throw new Error(`Missing or empty name parameter`);
|
||||
}
|
||||
let ws = websocket();
|
||||
event.subscribe("messages").on(function (msg){
|
||||
ws.writeText(msg)
|
||||
})
|
||||
let shouldExit = false;
|
||||
while (!shouldExit) {
|
||||
let data = ws.readText();
|
||||
switch (data) {
|
||||
case "exit":
|
||||
shouldExit = true;
|
||||
break;
|
||||
default:
|
||||
event.put("messages",JSON.stringify({
|
||||
name:name,
|
||||
data:data
|
||||
|
||||
const ws = websocket();
|
||||
|
||||
try {
|
||||
// 事件处理
|
||||
event.subscribe("messages").on((msg) => {
|
||||
ws.writeText(msg);
|
||||
});
|
||||
|
||||
// 主循环
|
||||
for await (const data of ws.readText()) {
|
||||
if (data === "exit") break;
|
||||
|
||||
if (data?.trim()) {
|
||||
await event.put("messages", JSON.stringify({
|
||||
name,
|
||||
data: data.trim()
|
||||
}));
|
||||
break;
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
ws.close();
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
let name=request.getQuery("name")
|
||||
let message=request.getQuery("data")
|
||||
event.put("messages", JSON.stringify({
|
||||
name:name,
|
||||
data:message
|
||||
}));
|
||||
|
||||
// response.write(event.subscribe("messages").get())
|
||||
Reference in New Issue
Block a user