Skip to content

Routing & Protocol

Young-do Cho edited this page Nov 14, 2019 · 7 revisions

SPA Router 섀계

  • 둜그인 νŽ˜μ΄μ§€

    • URL: /
    • 졜초 접속 μ‹œ, 둜그인 된 μœ μ €λ©΄ λ‘œλΉ„ νŽ˜μ΄μ§€λ‘œ 이동
    • OAuth 성곡 μ‹œ, λ‘œλΉ„ νŽ˜μ΄μ§€λ‘œ 이동
    • 게슀트 둜그인 성곡 μ‹œ, λ‘œλΉ„ νŽ˜μ΄μ§€λ‘œ 이동
  • λ‘œλΉ„ νŽ˜μ΄μ§€

    • URL: /lobby
    • λŒ€κΈ° μƒνƒœμΈ λ°© 클릭 μ‹œ, ν•΄λ‹Ή λ°© νŽ˜μ΄μ§€λ‘œ 이동
    • λ°© λ§Œλ“€κΈ° μ™„λ£Œ μ‹œ, ν•΄λ‹Ή λ°© νŽ˜μ΄μ§€λ‘œ 이동
  • λ°© νŽ˜μ΄μ§€

    • URL: /room/:room_id
    • λ°© λ‚˜κ°€κΈ° 클릭 μ‹œ, λ‘œλΉ„ νŽ˜μ΄μ§€λ‘œ 이동

ν΄λΌμ΄μ–ΈνŠΈ-μ„œλ²„ ν”„λ‘œν† μ½œ 섀계

1. OAuth 둜그인

2. 게슀트 둜그인

  • OAuth λ‘œκ·ΈμΈν•œ μ‚¬μš©μžκ°€ μ•„λ‹ˆλ©΄ κ·Έλƒ₯ λ‹€ 게슀트둜 μ²˜λ¦¬ν•˜κΈ°λ‘œ

Socket (on Client-side at Lobby)

Emit(= μ„œλ²„λ‘œ λ³΄λ‚΄λŠ” 것)

event name string note
join lobby - λ‘œλΉ„ 졜초 이동 μ‹œ 전달. 둜그인 된 μœ μ € μ—¬λΆ€ 확인 + λ°© λͺ©λ‘ 제곡 μš”μ²­
logout - λ‘œκ·Έμ•„μ›ƒ λ²„νŠΌ 클릭 μ‹œ. μ†ŒμΌ“ μ—°κ²° 끊고 둜그인 νŽ˜μ΄μ§€λ‘œ 이동
create room { room name } λ°© μƒμ„±ν•˜κΈ° λ²„νŠΌ 클릭 μ‹œ

On(= μ„œλ²„μ—κ²Œ λ°›λŠ” 것)

event name callback note
join lobby 둜그인된 μ—¬λΆ€ 확인 + λͺ¨λ“  λ°© λͺ©λ‘ 화면에 좜λ ₯ μš”μ²­ μ‚¬μš©μžμ—κ²Œλ§Œ 전달
create room μƒμ„±λœ 방으둜 μžλ™ μž…μž₯ μš”μ²­ μ‚¬μš©μžμ—κ²Œλ§Œ 전달
added room λ°© λͺ©λ‘μ— μ‹ κ·œ λ°© μΆ”κ°€
change room info νŠΉμ • 방의 μƒνƒœ 정보λ₯Ό λ³€κ²½

Socket (on Client-side at Room)

Emit(= μ„œλ²„λ‘œ λ³΄λ‚΄λŠ” 것)

event name string note
join room { room id } 졜초 λ°© μ ‘μ†μ‹œ
leave room -
start game - λ°©μž₯만 κ°€λŠ₯
move { direction }
chat message { message }

On(= μ„œλ²„μ—κ²Œ λ°›λŠ” 것)

event name callback note
join room 캐릭터 + λ‹‰λ„€μž„ (랜덀) ν• λ‹Ή, 문제 λ°‹ 남은 μ‹œκ°„ 곡개 μš”μ²­ μ‚¬μš©μžμ—κ²Œλ§Œ 전달
leave room ν•„λ“œ μœ„ 캐릭터 μ‚­μ œ
start game μ „κ΄‘νŒ μƒνƒœ λ³€κ²½, μƒνƒœλ₯Ό κ²Œμž„ μ€‘μœΌλ‘œ λ³€κ²½
move 각 캐릭터듀 νŠΉμ • μ’Œν‘œλ‘œ 이동
chat message μ±„νŒ… 기둝 μΆ”κ°€
start round μ „κ΄‘νŒ 문제 좜λ ₯, 각 캐릭터 μœ„μΉ˜ μ΄ˆκΈ°ν™”, μ‹œκ°„ 카운트 μ‹œμž‘ μ œν•œ μ‹œκ°„ μΉ΄μš΄νŠΈλŠ” ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ ν•˜λ„λ‘ ν•œλ‹€
end round μ •λ‹΅ ν‘œμ‹œ, μ˜€λ‹΅ ν”Œλ ˆμ΄μ–΄ 캐릭터 μ‚­μ œ(?)
not-end round 문제 μƒˆλ‘œ 좜λ ₯, 각 캐릭터 μœ„μΉ˜ μ΄ˆκΈ°ν™”, μ‹œκ°„ 카운트 μ‹œμž‘
end game 우승자 ν‘œμ‹œ, μƒνƒœλ₯Ό λŒ€κΈ° μ€‘μœΌλ‘œ λ³€κ²½
Clone this wiki locally