我想显示像超文本一样的房间数组,但是在创建第一个房间后会出现错误。
let rooms = [];
app.get("/rooms", function(req, res) {
for(let i=0;i<rooms.length;i++) {
res.send('<a href="/room/'+rooms[i]+'">'+rooms[i]+'</a> <br>');
}
res.send(200)
});
app.get("/room/:roomName", function(req, res) {
let roomName = req.params.roomName;
rooms.push(roomName);
res.send(roomName);
});
实际上,问题出在res.send
,因为它表明服务器已响应客户端。因此,您可以尝试以下代码
我认为以下代码可以解决您的问题,
app.get('/rooms', (req, res) => {
try {
return res.status(200).json(rooms.map(room =>(`<a href="${room}">${room}</a>`)));
} catch(error) {
console.error(error);
return res.status(500).json(error); // or another status you decide.
}
})