์ฌ๋ ์๋ฆผ ์๋๋ฆฌ์คusers.list API๋ก ์ฌ์ฉ์ ๋ชฉ๋ก์ ๊ฐ์ ธ์ค๋๊ฑด ๊ฐ๋ฅํ๋ค.
- ๊ทธ๋ฐ๋ฐ, ๊ฐ์ ์๊ฐ ๋ค๋ฅธ ์ฌ๋์ ์ฌ๋ ID์ ์ ํํด๋๊ณ ๋ฑ๋กํ๋ ค๋ ์๋๋ฅผ ํ๋๊ฑด ์ด๋ป๊ฒํด์ผํ์ง?
- ๋ณธ์ธ ์ธ์ฆ ๋ฉ์์ง๋ฅผ ๋ณด๋ด์ ์ธ์ฆ ํ์ ๋ฑ๋กํ๋๋ก ํด์ผํ๋?
- ์ํ. ์ด์ฐจํผ ์ฌ๋ ํ ํฐ๋ ์จ๊ฒจ์ผํ๋๊น ์ฌ๋ ๊ด๋ จ ์ฒ๋ฆฌ ๋ฐ ๋ณธ์ธ์ธ์ฆ์ ์ฒ๋ฆฌํ๋ node.js ์๋ฒ๋ฅผ ํ๋ ๋ง๋ค๊น?
์ฌ๋ ๋ฑ๋ก ์ ์ ์๋๋ฆฌ์ค
- ํ๊ฒฝ์ค์ ์์ ์ฌ๋ ๋ฑ๋ก ๋ฒํผ์ ๋๋ฅธ๋ค.
- ์ฌ๋ ๋ฑ๋ก ํ์ด์ง์์ ์ฌ๋ ์ฌ์ฉ์ ๊ฒ์ Input์ ๊ฒ์ํ ๋๋ง๋ค ๋ ธ๋ ์๋ฒ์์ ํํฐ๋ง๋ ์ฌ์ฉ์ ๋ชฉ๋ก ์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ๋ค.
- ์ฌ๋ ์ฌ์ฉ์๋ฅผ ์ ํํ๊ฒ ์ ํํ๋ฉด ์ธ์ฆ๋ฒํธ ๋ฐ์ก ๋ฒํผ์ ๋๋ฅธ๋ค.
- ํด๋น ์ฌ๋ ๊ณ์ ์ DM์ผ๋ก 6์๋ฆฌ์ ์ธ์ฆ๋ฒํธ๊ฐ ๋ฐ์ก๋๋ค.
- ์ฌ์ฉ์๋ ์น์์ 3๋ถ ์ด๋ด์ ์ธ์ฆ ๋ฒํธ๋ฅผ ์ ๋ ฅํด์ผ ํ๋ค.
- ์ธ์ฆ ์ฑ๊ณต์ SNS ์๋ฒ์ ์ฌ๋ ID ํ๋๋ฅผ ๋ฑ๋กํ๋ค.
์๊ณผ์ ์ ๊ฑฐ์ณ ์ธ์ฆ์ ํ ์ฌ์ฉ์๋ค ํ์์๋ง ํธ์ง๊ฐ ์ ์ก๋์์ ๋ ์ฌ๋ DM์ผ๋ก ์๋ฆผ์ด ์ด

๋ฐฑ์๋ ์๋ฒ
๋ฐฑ์๋ ์๋ฒ๋ ๋ชจ๋ ์ฌ๋ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ํ์ผ ๋ฐ์ดํฐ๋ก ์บ์ฑํ๊ณ ์๋ค๊ฐ ์ฌ์ฉ์์ ๊ฒ์ ์์ฒญ์ด ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ๋ค์ด์ค๋ฉด ๊ทธ๋ฅ ์บ์ฑ๋ ๋ฐ์ดํฐ์์ ํํฐ๋งํ ๋ฐ์ดํฐ๋ง ๋ฑ์ด์ค๋ค. ์บ์ฑ ๊ธฐ๊ฐ์ 1์ผ์ ๋๋ก ์ก์. (1์ผ ์ด๊ณผ์์ ์๋กญ๊ฒ ์ฌ๋ API ์์ฒญ์ด ๋ฐ์ํ๊ณ ํ์ผ ๋ฐ์ดํฐ๋ก ์ ์ฅํจ)๋
ธ๋ ์๋ฒ๋ฅผ ํ๋ ๋ง๋ ๋ค๋ฉด..์๋ก์ด ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ํ์ ๋ง๋ค๊น?์๋๋ฉด ๋ชจ๋
ธ๋ ํฌ ํํ๋ก ๋ง๋ค๊น? (ํ์ฌ ๋๋ ํ ๋ฆฌ์์ /slack-server, /client ๋ก ๋๋๋ ๋๋)
ํ์ํ ์ถ๊ฐ ์ ๋ณด
- ๋ฐฑ์๋ ๊ต์ก์์ธ์ง ํ๋ก ํธ์๋ ๊ต์ก์์ธ์ง ํ์ธํ๋ ํ ๊ธ ๋ฒํผ
โ ๊ต์ก์๋ณ๋ก ์ฌ๋ ์ฑ๋ api url์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ
- ํธ์ง ์ ์ก์ ์ฌ๋์๋ฆผ api ํธ์ถ์ ์๋ฒ์์
์ฌ๋ ์ธ์ฆ Confirmation ๊ณ ๋ ค์ฌํญ
URL /setting/slack/confirmation ์ ๋ค์ด์์ ๋ ์ฒ๋ฆฌํด์ผ ํ ๋ก์ง
- URL์ query๋ก ๋ถ์ด์จ token์ ๋ฐ์ดํฐ๋ก SNS ์๋ฒ์ GET /auth-check ์์ฒญ.
- ์ฑ๊ณต์ ์ธ์ ์คํ ๋ฆฌ์ง์ ํ ํฐ ์ ์ฅ.
- ์คํจ์ 404 ํ์ด์ง๋ก ์ด๋.
- ๋ก๋ฉ์ค์๋ ์ฒ๋ฆฌ์ค์ ๋๋ค... ๋ผ๋ ๋๋์ ํ๋ฉด ๋ณด์ฌ์ฃผ๊ธฐ
- ๋ก๋ฉํ ๋ ์ด๋ฃจ์ด์ ธ์ผํจ โ Suspense ์ด์ฉ
- ์ผํ์ฉ token params๋ฅผ ๋ค์ ์ฌ๋ ์๋ฒ์ ๋์ ธ์ฃผ๊ณ response๋ก accesstoken์ ๋ฐ๋๋ค.
์ด๋ โ ์ธ์
์คํ ๋ฆฌ์ง์ token ๋ฃ๊ธฐ
- GET/auth-check ๋ค์ ์์ฒญ
- ์ฑ๊ณต์ confirmation page ๋์ค๊ธฐ
์คํจ์ 404ํ์ด์ง