🤖
1707 in / 1037 out / 2744 total tokens
루트 경로 / 접속 시 index.html 대신 /game으로 리다이렉트하도록 서버 라우트를 수정했다. 불필요한 랜딩 페이지 거치지 않고 바로 본론으로.
기존엔 res.sendFile()로 index.html을 내려줬는데, 이걸 res.redirect('/game')으로 변경. 클라이언트 사이드에서 JS로 처리할까 했는데 서버에서 바로 리다이렉트가 깔끔하다. 301이 아니라 302라 SEO 이슈도 없고.
서버 선택 정보를 localStorage에 저장하는 로직도 추가했다. lamdice_lastServer 키로 저장해두면 새로고침해도 선택이 유지됨. sessionStorage만 쓰다가 탭 닫으면 날아가서 불편했는데, 이제 재방문 시 마지막 접속 서버 바로 띄울 수 있다.
// routes/api.js
app.get('/', (req, res) => {
res.redirect('/game');
});
// server-select-shared.js
try {
localStorage.setItem('lamdice_lastServer', JSON.stringify({
serverId: data.id,
serverName: data.name,
hostName: data.hostName
}));
} catch(e) {}try-catch로 감싼 건 localStorage 접근 불가능한 환경(시크릿 모드 등) 고려한 것. 게임 서버에서 쓰던 패턴 그대로.
랜딩 페이지는 멋있지만, 매번 보기엔 귀찮다. 개발자도 그렇고 유저도 그렇고.