Restsharp: ์š”์ฒญ ๋ฐ›๊ธฐ์— ๋ณธ๋ฌธ ์ถ”๊ฐ€(AddJsonBody)๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2019๋…„ 07์›” 05์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: restsharp/RestSharp

์˜ˆ์ƒ๋˜๋Š” ๋™์ž‘

์œ ํšจํ•œ ์‘๋‹ต

์‹ค์ œ ํ–‰๋™

๋งค๊ฐœ๋ณ€์ˆ˜๋‚˜ ๋ณธ๋ฌธ์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์Œ
VS ๋””๋ฒ„๊ทธ ๋ชจ๋“œ์—์„œ
req์—์„œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ์„œ๋ฒ„๋Š” ์‹œ์ฒด๋ฅผ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ•ญ์ƒ "์š”์ฒญ ๋ณธ๋ฌธ์ด ์ž˜๋ชป๋˜์—ˆ๊ฑฐ๋‚˜ ์„ค์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค" ๋ผ๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

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

RFC์˜ ํ˜„์žฌ ๋ฒ„์ „์ด ๋ณธ๋ฌธ์„ ํฌํ•จํ•˜๋Š” GET ์š”์ฒญ์„ ๋ช…์‹œ์ ์œผ๋กœ ๊ฑฐ๋ถ€ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ๋กœ ์ž˜๋ชป๋œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

GET ์š”์ฒญ ๋ฉ”์‹œ์ง€ ๋‚ด์˜ ํŽ˜์ด๋กœ๋“œ์—๋Š” ์ •์˜๋œ ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
GET ์š”์ฒญ์— ํŽ˜์ด๋กœ๋“œ ๋ณธ๋ฌธ์„ ๋ณด๋‚ด๋ฉด ๊ธฐ์กด
์š”์ฒญ์„ ๊ฑฐ๋ถ€ํ•˜๋Š” ๊ตฌํ˜„.

๊ฑฐ๋ถ€ ์—ฌ๋ถ€๋Š” ์„œ๋ฒ„์˜ ๊ตฌํ˜„์— ๋‹ฌ๋ ค ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ˆ˜์ค€์—์„œ ์ฐจ๋‹จํ•˜๋ฉด ์–ด๋–ค ์‹œ์ ์—์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•ด์•ผ ํ•˜๊ณ  ์ด ์‹œ๋‚˜๋ฆฌ์˜ค์— ์ง๋ฉดํ•  ์ˆ˜ ์žˆ๋Š” ๋งŽ์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ RestSharp ์‚ฌ์šฉ์ด ๋ฌดํšจํ™”๋ฉ๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

RFC ๋ณธ๋ฌธ์— ๋”ฐ๋ฅด๋ฉด GET์ด ์ง€์›์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ๋Œ€ํ•œ ๋ฐฐ๊ฒฝ์ด ์žˆ์Šต๋‹ˆ๋‹ค. RFC ๋ฒ”์œ„์— ์†ํ•˜์ง€ ์•Š๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๊ณ„ํš์ด ์—†์Šต๋‹ˆ๋‹ค.
https://stackoverflow.com/questions/978061/http-get-with-request-body

@alexeyzimarev
์žฌ์ƒํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์•ˆ๋…•ํ•˜์„ธ์š” @alexeyzimarev ,

๋‚˜๋Š” ์ตœ๊ทผ์— ์ด๊ฒƒ์— ๋ถ€๋”ช์ณค๋‹ค. .Net Core๋Š” ์ด์ œ ๋ณธ๋ฌธ๊ณผ ํ•จ๊ป˜ GET ๋ณด๋‚ด๊ธฐ๋ฅผ ์ง€์›ํ•˜์ง€๋งŒ ์ด๊ฒƒ์ด ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์–ด์•ผ ํ•˜๋Š”์ง€๋Š” ์•„์ง ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ๋ช‡ ๊ฐ€์ง€ ํฐ API์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ๋Œ€์•ˆ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ POST์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์ง€๋งŒ, ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

SO์—์„œ ์ฐธ์กฐ: https://stackoverflow.com/questions/43421126/possible-for-httpclient-to-send-content-or-body-for-get-request/

๋ฌผ๋ก  "ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ์ž"์˜ ๊ด€์ ์—์„œ ๋ชจ๋‘๊ฐ€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํ‘œ์ค€์„ ๋”ฐ๋ฅด๊ณ  ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. GET์„ ๋ณธ๋ฌธ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด API๋ฅผ ํ†ตํ•ฉํ•ด์•ผ ํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋‚ด๊ฐ€ RestSharp๋ฅผ ์šฐํšŒํ•˜๊ณ  ์ด๊ฒƒ์„ ์Šค์Šค๋กœ ๊ตฌํ˜„ํ•ด์•ผ ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค(์ด๋Š” ์žฌ๋ฏธ๊ฐ€ ๋œํ•จ).

์ด๊ฒƒ์„ ์ง€์›ํ•˜๋Š” .net Core์™€ ์ด๋ฅผ ์ฑ„ํƒํ•˜๋Š” API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๊ฒƒ์„ ๋„ฃ๋Š” ๊ฒƒ์„ ์žฌ๊ณ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด์— ๋Œ€ํ•ด ์ฝ์œผ๋ฉด RFC๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ œ ์ƒ๊ฐ์—๋Š”). ์ฆ‰, GET ๋ณธ๋ฌธ์ด ์ง€์›๋˜๊ณ  ํ—ˆ์šฉ๋˜๋ฉฐ ์„œ๋ฒ„๋Š” ์ด๋ฅผ ๋ฌด์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”!

RFC์˜ ํ˜„์žฌ ๋ฒ„์ „์ด ๋ณธ๋ฌธ์„ ํฌํ•จํ•˜๋Š” GET ์š”์ฒญ์„ ๋ช…์‹œ์ ์œผ๋กœ ๊ฑฐ๋ถ€ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ๋กœ ์ž˜๋ชป๋œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

GET ์š”์ฒญ ๋ฉ”์‹œ์ง€ ๋‚ด์˜ ํŽ˜์ด๋กœ๋“œ์—๋Š” ์ •์˜๋œ ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
GET ์š”์ฒญ์— ํŽ˜์ด๋กœ๋“œ ๋ณธ๋ฌธ์„ ๋ณด๋‚ด๋ฉด ๊ธฐ์กด
์š”์ฒญ์„ ๊ฑฐ๋ถ€ํ•˜๋Š” ๊ตฌํ˜„.

๊ฑฐ๋ถ€ ์—ฌ๋ถ€๋Š” ์„œ๋ฒ„์˜ ๊ตฌํ˜„์— ๋‹ฌ๋ ค ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ˆ˜์ค€์—์„œ ์ฐจ๋‹จํ•˜๋ฉด ์–ด๋–ค ์‹œ์ ์—์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•ด์•ผ ํ•˜๊ณ  ์ด ์‹œ๋‚˜๋ฆฌ์˜ค์— ์ง๋ฉดํ•  ์ˆ˜ ์žˆ๋Š” ๋งŽ์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ RestSharp ์‚ฌ์šฉ์ด ๋ฌดํšจํ™”๋ฉ๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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