Requests: ๊ฒฝ์šฐ์— ์‰ผํ‘œ: ์—ฌ๋Ÿฌ Set-Cookie ํ—ค๋”์— ์กฐ์ธ

์— ๋งŒ๋“  2017๋…„ 04์›” 07์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: psf/requests

๋งŽ์€ ์›น ์•ฑ์€ ํ•˜๋‚˜์˜ ์ฟ ํ‚ค์— ๋Œ€ํ•ด ํ•˜๋‚˜์˜ ํ—ค๋”์ธ ์—ฌ๋Ÿฌ Set-Cookie ํ—ค๋”์— ์ฟ ํ‚ค๋ฅผ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์š”์ฒญ์€ ์ด ํ—ค๋”๋ฅผ ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋œ ํ•˜๋‚˜์˜ ํฐ ํ—ค๋”๋กœ ๊ฒฐํ•ฉํ•ฉ๋‹ˆ๋‹ค.

๋™์ผํ•œ ์›น ์•ฑ์—์„œ requests.get์œผ๋กœ

Set-Cookie: ASP.NET_SessionId=token1; path=/; HttpOnly
Set-Cookie: Cookie1=token2; path=/ecp
Set-Cookie: X-BEResource=WIN-RBFR0BDA7V7.testlab.net~1; path=/ecp/15.0.516.30; HttpOnly
Set-Cookie: X-BackEndCookie=token3; expires=Mon, 03-Apr-2017 12:25:07 GMT; path=/ecp; HttpOnly

์š”์ฒญ ์‹œ:
resp.headers ์ด ๋ชจ์–‘

Set-Cookie: ASP.NET_SessionId=token1; path=/; HttpOnly,    
  Cookie1=token2; path=/ecp, 
  X-BEResource=WIN-RBFR0BDA7V7.testlab.net~1; path=/ecp/15.0.516.30; HttpOnly, 
  X-BackEndCookie=token3; expires=Thu, 06-Apr-2017 08:27:22 GMT; path=/ecp; HttpOnly

Firefox, IE, Chrome์€ ๊ตฌ๋ถ„ ๊ธฐํ˜ธ๊ฐ€ ์‰ผํ‘œ์ด์ง€๋งŒ ํ•„๋“œ์—์„œ EXPIRES ์‰ผํ‘œ๋กœ ๋‚ ์งœ์™€ ๋‚ ์งœ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด ์ฟ ํ‚ค๋ฅผ ์ž˜๋ชป ํ•ด์„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ˆ˜์ • ํŠธ๋ž˜ํ”ฝ์˜ ์ฃผ์š” ๋ฌธ์ œ. ๋‚ด ์ƒ๊ฐ์— ์„œ๋ฒ„๋Š” ์—ฌ๋Ÿฌ ํ—ค๋”๋ฅผ ๋ณด๋‚ด์•ผํ•ฉ๋‹ˆ๋‹ค lib๋Š” ์—ฌ๋Ÿฌ ํ—ค๋”๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์š”์ฒญ์€ ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ํ˜•์‹์œผ๋กœ ํ—ค๋”๋ฅผ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ์•ฝ์†์„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ ๋‹น์žฅ์€ ํ—ค๋”์—์„œ ์ฟ ํ‚ค๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋Œ€์‹  ์š”์ฒญ์ด ์ฟ ํ‚ค๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” cookiejar๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ฟ ํ‚ค๋ฅผ ๊ฑฐ๊ธฐ์— ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.

์žฅ๊ธฐ์ ์œผ๋กœ Set-Cookie ํ—ค๋”๋ฅผ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ๊ฒฐํ•ฉํ•˜๋Š” ๊ฒƒ์„ ์ œ์™ธํ•˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

์š”์ฒญ์€ ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ํ˜•์‹์œผ๋กœ ํ—ค๋”๋ฅผ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ์•ฝ์†์„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ ๋‹น์žฅ์€ ํ—ค๋”์—์„œ ์ฟ ํ‚ค๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋Œ€์‹  ์š”์ฒญ์ด ์ฟ ํ‚ค๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” cookiejar๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ฟ ํ‚ค๋ฅผ ๊ฑฐ๊ธฐ์— ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.

์žฅ๊ธฐ์ ์œผ๋กœ Set-Cookie ํ—ค๋”๋ฅผ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ๊ฒฐํ•ฉํ•˜๋Š” ๊ฒƒ์„ ์ œ์™ธํ•˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์šฐ๋ฆฌ๋ฅผ ๋ฌผ๋ ธ๊ณ  ์šฐ๋ฆฌ์—๊ฒŒ ๊ฝค ๋งŽ์€ ์‹œ๊ฐ„์„ ์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. Set-Cookie ๊ทธ๋Œ€๋กœ ๋‘๋„๋ก ํˆฌํ‘œํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ์š”์ฒญ์ด ํ—ค๋”๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๊ทธ๋Ÿด๋งŒํ•œ ์ด์œ ๊ฐ€ ์žˆ๋‚˜์š”? IMHO ๊ทธ๊ฒƒ์€ ๋ชจ๋“  ์‚ฌ๋žŒ์˜ ์ผ์„ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋ฌด์—‡์„ ๋†“์น˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
๋‹น์‹ ์˜ ์ข‹์€ ์ผ์„ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์•ˆ๋…•ํ•˜์„ธ์š”, https://github.com/Ousret/kiss-headers requests ํ•˜์—ฌ ํ—ค๋”๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณง ํ—ค๋” ํ‘œํ˜„์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰