HttpService
HttpService : Instance
Overview
์ธ๋ถ ์น ์๋น์ค์์ ํต์ ์ ์ํ HTTP ์์ฒญ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํ์ฉํ๋ฉด ๋ถ์ ์์คํ ์ฐ๋, ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์ธ๋ถ ์๋ฒ ํ๊ฒฝ ์ค์ ๋ฐ์, ์ค์๊ฐ ๋ฐ์ดํฐ ์ ์ก ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์๋์ ํตํฉํ ์ ์์ต๋๋ค.
๋ํ JSON ํ์์ ์ฌ์ฉํ๋ API์ ๊ต๋ฅํ ๋ JSONEncode ๋ฐ JSONDecode ๋ฉ์๋๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋จํ ์ง๋ ฌํํ๊ฑฐ๋ ์ญ์ง๋ ฌํํ ์ ์์ต๋๋ค.
์์ ์ ์ด๊ณ ์์ ํ ์๋ ํ๊ฒฝ์ ์ ์งํ๊ธฐ ์ํด, ๋ฐ๋์ ์ ๋ขฐ์ฑ๊ณผ ๋ณด์์ฑ์ด ๊ฒ์ฆ๋ ์ธ๋ถ ํ๋ซํผ์๋ง HTTP ์์ฒญ์ ์ ์กํ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
Properties
HttpEnabled
boolean
HttpService๋ฅผ ํตํด ์ธ๋ถ ์น ์๋น์ค์ ํต์ ํ ์ ์๋๋ก ํ์ฉํ๋ ์ค์ ์ ๋๋ค.
์ด ๊ฐ์ true๋ก ์ง์ ํ๋ฉด ์คํฌ๋ฆฝํธ์์ GetAsync, PostAsync, RequestAsync ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๋ถ ์๋ฒ๋ก HTTP ์์ฒญ์ ์ ์กํ ์ ์์ต๋๋ค.
ํด๋น ์ต์ ์ ์คํ๋์ค์ Game Settings ๋ฉ๋ด์์๋ ํ์ฑํํ ์ ์์ต๋๋ค.
Code Samples
local HttpService = game:GetService("HttpService")
print(HttpService.HttpEnabled)Methods
GenerateGUID
์คํ ํ๊ฒฝ ์ ์ฒด์์ ๋จ ํ ๋ฒ๋ง UUID ๋ฌธ์์ด์ ์์ฑํ๋ฉฐ, ์ดํ ๋ชจ๋ ํธ์ถ์์ ๋์ผํ UUID๋ฅผ ๋ฐํํฉ๋๋ค.
์์ฑ๋ ์๋ณ์๋ 16๋ฐ์ดํธ์ ๋ฐ์ดํฐ๋ฅผ 32๊ฐ์ 16์ง์ ๋ฌธ์๋ก ํํํ ๋ค, 8-4-4-4-12 ํํ๋ก ๊ตฌ๋ถํ์ฌ ์ด 36์์ ๋ฌธ์์ด ํํ(์: 123e4567-e89b-12d3-a456-426655440000)๋ก ์ ๊ณตํฉ๋๋ค.
Parameters
boolean InWrapInCurlyBraces
๋ฌธ์์ด ์๋ค์ ์ค๊ดํธ๋ฅผ ํฌํจํ ์ง ์ฌ๋ถ์ ๋๋ค. (๊ธฐ๋ณธ๊ฐ: false)
Return
string
์์ฑ๋ UUID์ ๋๋ค.
Code Samples
GetAsync
HTTP GET ์์ฒญ์ ์ ์กํ๋ ๊ฐ๋จํ ์ฌ์ฉ ๋ฐฉ์์ผ๋ก, RequestAsync์ ๋น์ทํ๊ฒ ๋์ํ์ง๋ง ์์ฒญ ์ ๋ณด๋ฅผ ๊ฐ๋ณ ์ธ์๋ก ์ ๋ฌํ๊ณ ์๋ต ๋ฐ์ดํฐ ์ค ๋ณธ๋ฌธ๋ง ๋ฐํํฉ๋๋ค. ๋ฐ๋ผ์ ํธ์์ ๋น ๋ฅด๊ฒ GET ์์ฒญ์ ๋ณด๋ด์ผ ํ ๋ ์ ํฉํ๋ฉฐ, ๋ณด๋ค ์ ๊ตํ ์ ์ด๊ฐ ํ์ํ ๊ฒฝ์ฐ์๋ RequestAsync๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ๋ฐ๋์งํฉ๋๋ค.
NoCache ๊ฐ์ true๋ก ์ง์ ํ๋ฉด ๋์ผํ ์ฃผ์๋ก ๋ณด๋ธ ๊ณผ๊ฑฐ ์์ฒญ์ ์บ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ , ๋งค๋ฒ ์๋กญ๊ฒ ์๋ฒ์ ์์ฒญ์ ์ ์กํ๋๋ก ๋์ํฉ๋๋ค.
Parameters
string InUrl
์์ฒญํ ์น ์๋ฒ์ URL์ ๋๋ค.
boolean InNoCache
์บ์ ์ฌ์ฉ ์ฌ๋ถ์ ๋๋ค. (๊ธฐ๋ณธ๊ฐ: false)
Value InHeaders
HTTP ์์ฒญ์ ํฌํจํ ํค๋ ์ ๋ณด์ ๋๋ค.
Return
string
GET ์์ฒญ์ ๋ํด ์๋ฒ๊ฐ ๋ฐํํ ์๋ต ๋ฐ์ดํฐ์ ๋๋ค.
Code Samples
JSONDecode
JSON ํ์์ ๊ฐ์ฒด ๋๋ ๋ฐฐ์ด์ Lua ํ ์ด๋ธ๋ก ๋ณํํฉ๋๋ค.
JSON ๊ฐ์ฒด๋ ๋ฌธ์์ด ํค ๊ธฐ๋ฐ์ ํ ์ด๋ธ๋ก, JSON ๋ฐฐ์ด์ 1๋ถํฐ ์์ํ๋ ์ซ์ ํค ๊ธฐ๋ฐ์ ๋ฐฐ์ด ํํ๋ก ๋ณํ๋ฉ๋๋ค.
๋ชจ๋ ์ซ์๋ ๋ถ๋์์(float) ๊ฐ์ผ๋ก ํด์๋๋ฉฐ, ์ค์ฒฉ๋ ๊ตฌ์กฐ๋ ์ฌ๊ท์ ์ผ๋ก ๋ณํ๋ฉ๋๋ค.
๋น์ด ์๋ JSON ๊ฐ์ฒด๋ ๋ฐฐ์ด์ ๋น ํ ์ด๋ธ๋ก ๋ฐํ๋ฉ๋๋ค.
Parameters
string InInput
๋ณํํ JSON ํ์์ ๋ฐ์ดํฐ์ ๋๋ค.
Return
Value
๋ณํ๋ Lua ํ ์ด๋ธ ๋ฐ์ดํฐ์ ๋๋ค.
Code Samples
JSONEncode
Lua ํ ์ด๋ธ์ JSON ๊ฐ์ฒด ๋๋ ๋ฐฐ์ด๋ก ๋ณํํฉ๋๋ค.
nil ๊ฐ์ JSON์ ํฌํจ๋์ง ์์ผ๋ฉฐ, inf์ nan ๊ฐ์ ํน์ ์ซ์๋ ๋ณํ๋์ง๋ง ์ด๋ JSON ํ์ค์ ์ํ์ง ์๊ธฐ ๋๋ฌธ์ ์ธ๋ถ ์์คํ ๊ณผ ์ฐ๋ํ ๋ ํธํ์ฑ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์์ต๋๋ค.
๋น์ด ์๋ ํ ์ด๋ธ์ ๋น JSON ๋ฐฐ์ด๋ก ๋ณํ๋๋ฉฐ, ํ ์ด๋ธ ๋ด๋ถ์ ์ํ ์ฐธ์กฐ๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ ๋ณํ ๊ณผ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
Parameters
Value InInput
๋ณํํ Lua ํ ์ด๋ธ ๋ฐ์ดํฐ์ ๋๋ค.
Return
string
๋ณํ๋ JSON ํ์์ ๋ฐ์ดํฐ์ ๋๋ค.
Code Samples
PostAsync
HTTP POST ์์ฒญ์ ์ํํฉ๋๋ค. RequestAsync() ํจ์์ ์ ์ฌํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง๋ง, ์์ฒญ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋์ ๋๋ฆฌ๊ฐ ์๋ ๊ฐ๋ณ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌํ ์ ์์ผ๋ฉฐ, ์๋ต ์ ์ฒด๊ฐ ์๋ ๋ณธ๋ฌธ(body)๋ง ๋ฐํํฉ๋๋ค.
์ฃผ๋ก ๊ฐํธํ ์ฝ๋ ์์ฑ์ฉ์ผ๋ก ์ฌ์ฉ๋๋ฉฐ, ๋๋ถ๋ถ์ ์ํฉ์์๋ RequestAsync() ํจ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ๋ฐ๋์งํฉ๋๋ค.
๋ํ compress ์ต์ ์ true๋ก ์ค์ ํ๋ฉด, ๋์ฉ๋ ์์ฒญ ๋ณธ๋ฌธ์ด ์๋์ผ๋ก gzip ํ์์ผ๋ก ์์ถ๋์ด ์ ์ก ํจ์จ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
Parameters
string InUrl
์์ฒญํ ์น ์๋ฒ์ URL์ ๋๋ค.
string InData
์ ์กํ ๋ฐ์ดํฐ์ ๋๋ค.
Enum.HttpContentType InContentType
Content-Type ํค๋ ๊ฐ์ ์กฐ์ ํ์ฌ ์ ์ก ํ์์ ์ง์ ํ ์ ์์ต๋๋ค. (๊ธฐ๋ณธ๊ฐ: ApplicationJson)
boolean InCompress
๋ฐ์ดํฐ๋ฅผ ์๋ฒ๋ก ๋ณด๋ผ ๋ gzip ๋ฐฉ์์ผ๋ก ์์ถ ์ ์ก์ ์ฌ์ฉํ ์ง ์ฌ๋ถ์ ๋๋ค. (๊ธฐ๋ณธ๊ฐ: false)
Value InHeaders
HTTP ์์ฒญ์ ํฌํจํ ํค๋ ์ ๋ณด์ ๋๋ค.
Return
string
POST ์์ฒญ์ ๋ํด ์๋ฒ๊ฐ ๋ฐํํ ์๋ต ๋ฐ์ดํฐ์ ๋๋ค.
Code Samples
RequestAsync
Sends an HTTP request using any method with the provided dictionary of information.
Parameters
Dictionary InRequestOptions
URL, ๋ฉ์๋, ํค๋, ๋ณธ๋ฌธ ๋ฑ HTTP ์์ฒญ์ ํ์ํ ์ ๋ณด๋ฅผ ํค-๊ฐ ํํ๋ก ๋ด์ ๋์ ๋๋ฆฌ์ ๋๋ค.
Return
Value
HTTP ์๋ต ์ ๋ณด๋ฅผ ํค-๊ฐ ํํ๋ก ๋ด์ ๋์ ๋๋ฆฌ์ ๋๋ค. ์ฑ๊ณต ์ฌ๋ถ, ์ํ ์ฝ๋, ์๋ต ๋ณธ๋ฌธ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
Code Samples
UrlEncode
์ ๋ ฅ๋ ๋ฌธ์์ด ๋ด์ ์์ฝ ๋ฌธ์๋ฅผ % ๊ธฐํธ์ ๋ ์๋ฆฌ 16์ง์ ์ฝ๋๋ก ๋ณํํ์ฌ, URL์์ ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์๋ ํผ์ผํธ ์ธ์ฝ๋ฉ(percent-encoding) ๋ฌธ์์ด์ ์์ฑํฉ๋๋ค.
Parameters
string InInput
๋ณํํ ๋ฌธ์์ด(์ฃผ์)์ ๋๋ค.
Return
string
๋ณํ๋ ๋ฌธ์์ด(์ฃผ์)์ ๋๋ค.
Code Samples
Events
See also
JSON๊ณผ HTTP ํต์Last updated