Skip to content

Commit 7f2995e

Browse files
authored
Merge pull request #45 from zhangjingwen2008/fix/action-lock-v2
fix: add action lock to look route for consistency
2 parents 3b18b8b + 3ea7eab commit 7f2995e

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

server/src/routes.js

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,13 @@ router.post('/logout', (req, res) => {
6868
res.json({ ok: true });
6969
});
7070

71-
router.get('/look', requireSession, (req, res) => {
72-
const result = worldEngine.look(req.requestHandle.playerId);
73-
if (!result) return res.status(404).json({ error: '玩家不存在' });
74-
res.json({ ...result, perceptions: req.drainPerceptions(), newMessages: req.drainNewMessages() });
71+
router.get('/look', requireSession, async (req, res) => {
72+
const release = await actionLock.acquire(req.requestHandle.playerId);
73+
try {
74+
const result = worldEngine.look(req.requestHandle.playerId);
75+
if (!result) return res.status(404).json({ error: '玩家不存在' });
76+
res.json({ ...result, perceptions: req.drainPerceptions(), newMessages: req.drainNewMessages() });
77+
} finally { release(); }
7578
});
7679

7780
router.post('/walk', requireSession, async (req, res) => {

0 commit comments

Comments
 (0)