216.73.216.168 TODAY : 4,109

PHP ์˜จ๋ผ์ธ ๊ฐ•์˜

 > 

PHP - ๊ณ ๊ธ‰

๐Ÿ“š PHP ๊ณ ๊ธ‰ - 4์ฃผ์ฐจ: RESTful API ๊ฐœ๋ฐœ ๊ธฐ์ดˆ - 04 Postman ๋“ฑ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ ํ™œ์šฉ

๐Ÿ“š PHP ๊ณ ๊ธ‰ - 4์ฃผ์ฐจ: RESTful API ๊ฐœ๋ฐœ ๊ธฐ์ดˆ - 04 Postman ๋“ฑ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ ํ™œ์šฉ
ํ‰์  10.0 ๋ผ์ด์„ผ์Šค free
์‚ฌ์šฉ์žํ‰์  10.0 ์šด์˜์ฒด์ œ
๋‹ค์šด๋กœ๋“œ 1 ํŒŒ์ผํฌ๊ธฐ 0
์ œ์ž‘์‚ฌ LUZENSOFT ๋“ฑ๋ก์ผ 2025-09-14 15:20:08
์กฐํšŒ์ˆ˜ 1
- ์„ค๋ช…

#API #ํ…Œ์ŠคํŠธ #๋„๊ตฌ์˜ #ํ•„์š”์„ฑ

uploadImage


#RESTful API๋ฅผ ๊ฐœ๋ฐœํ•  ๋•Œ๋Š” ํด๋ผ์ด์–ธํŠธ์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํ™•์ธํ•˜๊ณ , API๊ฐ€ ์˜ˆ์ƒ๋Œ€๋กœ ๋™์ž‘ํ•˜๋Š”์ง€ ๊ฒ€์ฆํ•˜๋Š” ๊ณผ์ •์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ด๋•Œ #API ํ…Œ์ŠคํŠธ ๋„๊ตฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ ๋„ #HTTP ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ  ์‘๋‹ต์„ ๋ฐ›์•„๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์—ฌ, #๊ฐœ๋ฐœ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๊ณ  #๋””๋ฒ„๊น…์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, API์˜ #์ •ํ™•์„ฑ๊ณผ #์‹ ๋ขฐ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ํฌ๊ฒŒ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.



#Postman #ํ™œ์šฉ๋ฒ•

uploadImage


#Postman์€ #API ๊ฐœ๋ฐœ ๋ฐ ํ…Œ์ŠคํŠธ์— ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ง๊ด€์ ์ธ UI๋ฅผ ํ†ตํ•ด ๋‹ค์–‘ํ•œ HTTP ์š”์ฒญ์„ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


1. #์š”์ฒญ #์ƒ์„ฑ ๋ฐ #์ „์†ก


Postman์„ ์‹คํ–‰ํ•œ ํ›„ 'New Request'๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ƒˆ ์š”์ฒญ ํƒญ์„ ์—ฝ๋‹ˆ๋‹ค.

  • #๋ฉ”์„œ๋“œ ์„ ํƒ: GET, POST, PUT, DELETE ๋“ฑ ํ•„์š”ํ•œ HTTP ๋ฉ”์„œ๋“œ๋ฅผ ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด์—์„œ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • #URL ์ž…๋ ฅ: ํ…Œ์ŠคํŠธํ•  API์˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ URL ์ž…๋ ฅ๋ž€์— ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  • #ํ—ค๋” (Headers): 'Headers' ํƒญ์—์„œ Content-Type, Authorization ๋“ฑ ํ•„์š”ํ•œ ํ—ค๋”๋ฅผ ํ‚ค-๊ฐ’ ์Œ์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, JSON ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๋•Œ๋Š” Content-Type: application/json์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

  • #๋ณธ๋ฌธ (Body): POST, PUT, PATCH ์š”์ฒญ์˜ ๊ฒฝ์šฐ 'Body' ํƒญ์—์„œ ์ „์†กํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. 'raw'๋ฅผ ์„ ํƒํ•˜๊ณ  'JSON' ํƒ€์ž…์„ ์ง€์ •ํ•œ ํ›„ JSON ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  • #์ „์†ก (Send): ๋ชจ๋“  ์„ค์ •์„ ๋งˆ์นœ ํ›„ 'Send' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค.


2. #์‘๋‹ต #ํ™•์ธ

uploadImage


์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด Postman์€ API ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์‘๋‹ต์„ ํ•˜๋‹จ ํŒจ๋„์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  • #์‘๋‹ต_๋ณธ๋ฌธ (Response Body): ์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ธ JSON, XML, HTML ๋“ฑ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 'Pretty' ๋ทฐ๋ฅผ ํ†ตํ•ด ๊ฐ€๋…์„ฑ ์ข‹๊ฒŒ ํฌ๋งคํŒ…๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • #์ƒํƒœ_์ฝ”๋“œ (Status Code): HTTP ์‘๋‹ต ์ƒํƒœ ์ฝ”๋“œ (์˜ˆ: 200 OK, 404 Not Found, 500 Internal Server Error)๋ฅผ ํ†ตํ•ด ์š”์ฒญ์˜ ์„ฑ๊ณต ์—ฌ๋ถ€ ๋ฐ ์˜ค๋ฅ˜ ์œ ํ˜•์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • #์‘๋‹ต_์‹œ๊ฐ„ ๋ฐ #ํฌ๊ธฐ: ์š”์ฒญ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„๊ณผ ์‘๋‹ต ๋ณธ๋ฌธ์˜ ํฌ๊ธฐ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • #์‘๋‹ต_ํ—ค๋” (Response Headers): ์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ธ ์‘๋‹ต ํ—ค๋” ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


3. #ํ™˜๊ฒฝ (Environments) ๋ฐ #์ปฌ๋ ‰์…˜ (Collections) ํ™œ์šฉ


  • #ํ™˜๊ฒฝ: ๊ฐœ๋ฐœ, ์Šคํ…Œ์ด์ง•, ์šด์˜ ๋“ฑ ์—ฌ๋Ÿฌ ํ™˜๊ฒฝ์—์„œ ๋™์ผํ•œ API ์š”์ฒญ์„ ํ…Œ์ŠคํŠธํ•  ๋•Œ, URL์ด๋‚˜ ์ธ์ฆ ํ† ํฐ ๊ฐ™์€ #๋ณ€์ˆ˜๋ฅผ ํ™˜๊ฒฝ๋ณ„๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 'Environments' ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๊ฐ ํ™˜๊ฒฝ์— ๋งž๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•˜๊ณ  ์‰ฝ๊ฒŒ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • #์ปฌ๋ ‰์…˜: ๊ด€๋ จ๋œ API ์š”์ฒญ๋“ค์„ #ํด๋”์ฒ˜๋Ÿผ ๋ฌถ์–ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ณ„๋กœ API ์š”์ฒญ๋“ค์„ ์ฒด๊ณ„์ ์œผ๋กœ ์ •๋ฆฌํ•˜๊ณ , ํŒ€์›๋“ค๊ณผ ๊ณต์œ ํ•˜๊ฑฐ๋‚˜ ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ ์Šค์œ„ํŠธ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



#๋‹ค๋ฅธ #API #ํ…Œ์ŠคํŠธ #๋„๊ตฌ


Postman ์™ธ์—๋„ ๋‹ค์–‘ํ•œ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • #Insomnia: Postman๊ณผ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉฐ, ๊น”๋”ํ•œ UI์™€ ์„ฑ๋Šฅ์œผ๋กœ ๋งŽ์€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์‚ฌ๋ž‘๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ GraphQL API ํ…Œ์ŠคํŠธ์— ๊ฐ•์ ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

  • #cURL: #๋ช…๋ น์ค„ ๊ธฐ๋ฐ˜์˜ ๋„๊ตฌ๋กœ, HTTP ์š”์ฒญ์„ ์ง์ ‘ ๊ตฌ์„ฑํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ์ด๋‚˜ ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ์— ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • #Swagger #UI: API ๋ฌธ์„œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , ํ•ด๋‹น ๋ฌธ์„œ์—์„œ ์ง์ ‘ API๋ฅผ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ์›น ๊ธฐ๋ฐ˜ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. API ๋ช…์„ธ์™€ ํ…Œ์ŠคํŠธ๋ฅผ ๋™์‹œ์— ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • #VS Code #ํ™•์žฅ: Visual Studio Code์™€ ๊ฐ™์€ IDE์—์„œ๋„ REST Client, Thunder Client ๋“ฑ ๋‹ค์–‘ํ•œ ํ™•์žฅ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด API ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ๋“ค์„ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•˜๋ฉด, PHP๋ฅผ ์ด์šฉํ•œ RESTful API ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋“ค์„ ๋น ๋ฅด๊ฒŒ ์‹๋ณ„ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜์—ฌ, ๋”์šฑ ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์ธ API๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


PHP ๊ณ ๊ธ‰ RESTful API ๊ฐœ๋ฐœ ๊ธฐ์ดˆ Postman API ํ…Œ์ŠคํŠธ ๋„๊ตฌ ํ™œ์šฉ ํ•„์š”์„ฑ Postman ํ™œ์šฉ๋ฒ• ์š”์ฒญ ์ƒ์„ฑ ์ „์†ก ์‘๋‹ต ํ™•์ธ ํ™˜๊ฒฝ ์ปฌ๋ ‰์…˜ ๋‹ค๋ฅธ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ Insomnia cURL Swagger UI VS Code ํ™•์žฅ




๊ณ ์ •์•„์ดํ”ผ, ์›”5,500์›, VPN, ์šฉ๋„๋ณ„ ํด๋ฆฐ์•„์ดํ”ผ ์ œ๊ณต, ๋ฌด๋ฃŒํ…Œ์ŠคํŠธ

https://xn--299ao67b9qbmsf04c.net/