2020-11-11(Wed)
Last updated
Last updated
ํ์ต ๋ ์ง // 2020-11-11(์)
ํ์ต์๊ฐ // 9:00~22:00
ํ์ต ๋ฒ์ ๋ฐ ์ฃผ์ // base64, chunked encoding
๋๋ฃ ํ์ต ๋ฐฉ๋ฒ // sanam, yohai๋๊ณผ ํ์ ํจ
ํ์ต ๋ชฉํ // chunked encoding ๊ตฌํ์ ํ์ํ ๊ณ ๋ฏผ/ํ๋จ์ ๋ง๋ฌด๋ฆฌํ๋ค.
์์ธ ํ์ต ๋ด์ฉ
์ฃผ๊ฑฐ๋ฌธ์ ๋ก ํ์์ผ์ ํ์๋ค์๊ฒ ์จ์ ํ ๋งก๊ฒผ๋๋ฐ, ๋ณด์์ธ์ฆํค๋๋ฅผ ์ ๊ตฌํํด์ฃผ์๋ค. ๋ฐ๋ผ์ ์ ๊ตฌํ๋์๋์ง ํ์ต/๊ฒ์ฆํ๋ ์๊ฐ์ ๊ฐ์ก๋ค.
๋ณด์์ธ์ฆํค๋์ ์๋ํ๋ก์ฐ๋ ์๋์ ๊ฐ๋ค.
ํด๋ผ์ด์ธํธ๊ฐ ๋ณด์ ๊ตฌ์ญ(realm)์ ํด๋นํ๋ ๋ฆฌ์์ค๋ฅผ ์์ฒญํ๋ฉด ๋ณด์ ๊ด๋ จ ํค๋๋ฅผ ๋ด์์ ์๋ต์ผ๋ก ๋ณด๋ธ๋ค.
ํด๋ผ์ด์ธํธ๋ ์ด ๋ณด์ ๊ด๋ จ ์๋ต์ 401 ์๋ฌ์ฝ๋์ WWW-Authorzation ํค๋๋ฅผ ๋ฐ๊ณ , ๋ธ๋ผ์ฐ์ ๊ฐ ์ด์ ํด๋นํ๋ id, password ํ์ ์ ๋์์ค์ผ๋ก์จ ์ ๋ ฅ์ ๋ฐ์ ์ ์๊ฒ ํด์ค๋ค. ์ด์ id, password๋ฅผ ์ ๋ ฅํ ํ ์ํฐ๋ฅผ ๋๋ฅด๋ฉด ๋ธ๋ผ์ฐ์ ๋ ๋ค์ ์น์๋ฒ์ ๋ฆฌํ์คํธ๋ฅผ ๋ณด๋ด๋๋ฐ ์ด๋ฒ์๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์์ด๋์ ๋น๋ฐ๋ฒํธ๊ฐ Authonticate ํค๋๋ฅผ ๊ฐ์ง๊ณ value ๊ฐ์ผ๋ก ๋ค์ด๊ฐ๋ค. ์ด ๋ base64๋ก ์ธ์ฝ๋ฉ๋์ด ๋ค์ด๊ฐ๋ค.
์ดํ ์น์๋ฒ๋ ์ด ๊ฐ์ base64๋ก ๋์ฝ๋ฉํ๊ณ auth_basic_user_file ํ์ผ์ ์ ๋ ฅ๋์ด ์๋ ๊ฐ๊ณผ ๋น๊ตํ๋ค. ๋ง์ฝ ๊ฐ์ด ๋ค๋ฅด๋ฉด 403 ์๋ฌ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ์กํ๊ณ ๊ฐ์ด ๊ฐ๋ค๋ฉด ๋ณด์ ์์ญํ์ด์ง๋ฅผ ๋ณด์ฌ์ค๋ค.
๋ํ raw_body๋ฅผ ์ธ์ฝ๋ฉํ์ฌ chunked_body๋ก ๋ง๋๋ encodeChunkedBody
ํจ์๋ฅผ ๋ง๋ค์ด ํ
์คํธ๋ฅผ ๋ง์ณค๋ค.
ํ์ต ๋ด์ฉ์ ๋ํ ๊ฐ์ธ์ ์ธ ์ดํ
์๋ฌด๋๋ subject์์ ํ์ฉ๋์ด์๋ ํค๋๋ ํจ์๊ฐ ์ ํ๋์ด์๋ค๋ณด๋ ์ง์ ๋ง๋ค์ด์จ์ผํ๋ ์ ํธํจ์๋ค์ด ์์ต๋๋ค. ๊ฐ๋ น ์ค๋ ๋ง๋ itosHex
ํจ์๊ฐ ๊ทธ๋ฌํ๋๋ฐ, ๊ตฌํ๋์ด์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํจ์๋ก๋ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๋ผ ์ ์์ด์ ๊ทธ๋ฅ ์ง์ ๊ตฌํํ๋ค์. ์ด ๋ '์ ์ฐ๋ฆฌ๊ฐ ๊ทธ๋๋ ๊ธฐ์ด๋ฅผ ์ํํ ํ์ง๋ ์์๊ตฌ๋' ์ถ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ์๋ค์ด ์ ์ ํ ์์ค์ ์ด์ ์ ๊ฐ์ง๊ณ ๊ธฐ๋ ์ด์์ผ๋ก ๋ฏฟ์์งํ๊ฒ ๊ธฐ๋ฅ์ ๊ตฌํํด์ฃผ๋ ํํ๋ก์ ํธ์ ๋ฌ๋ฏธ๋ฅผ ๋ง๋ณด์์ต๋๋ค. ์ฆ๊ฒ๋ค์.
๋ค์ ํ์ต ๊ณํ
Transfer-Encoding ํค๋ ๊ตฌํ