์ด๋ ์ต์ ๋ฆด๋ฆฌ์ค๋ฅผ v12.2.0sourcecode.zip์ผ๋ก ๋ค์ด๋ก๋ํ ์ ์๋ Apiato๋ผ๋ Windows ์ฑ์ ๋๋ค. ์ํฌ์คํ ์ด์ ์ฉ ๋ฌด๋ฃ ํธ์คํ ์ ๊ณต์ ์ฒด์ธ OnWorks์์ ์จ๋ผ์ธ์ผ๋ก ์คํํ ์ ์์ต๋๋ค.
OnWorks์ ํจ๊ป Apiato๋ผ๋ ์ด ์ฑ์ ๋ฌด๋ฃ๋ก ๋ค์ด๋ก๋ํ์ฌ ์จ๋ผ์ธ์์ ์คํํ์ญ์์ค.
์ด ์ฑ์ ์คํํ๋ ค๋ฉด ๋ค์ ์ง์นจ์ ๋ฐ๋ฅด์ธ์.
- 1. ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ PC์ ๋ค์ด๋ก๋ํ์ต๋๋ค.
- 2. ํ์ผ ๊ด๋ฆฌ์ https://www.onworks.net/myfiles.php?username=XXXXX์ ์ํ๋ ์ฌ์ฉ์ ์ด๋ฆ์ ์ ๋ ฅํฉ๋๋ค.
- 3. ์ด๋ฌํ ํ์ผ ๊ด๋ฆฌ์์์ ์ด ์์ฉ ํ๋ก๊ทธ๋จ์ ์ ๋ก๋ํฉ๋๋ค.
- 4. ์ด ์น์ฌ์ดํธ์์ ๋ชจ๋ OS OnWorks ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์์ํ์ง๋ง ๋ ๋์ Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์์ํฉ๋๋ค.
- 5. ๋ฐฉ๊ธ ์์ํ OnWorks Windows OS์์ ์ํ๋ ์ฌ์ฉ์ ์ด๋ฆ์ผ๋ก ํ์ผ ๊ด๋ฆฌ์ https://www.onworks.net/myfiles.php?username=XXXXX๋ก ์ด๋ํฉ๋๋ค.
- 6. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํฉ๋๋ค.
- 7. Linux ๋ฐฐํฌ ์ํํธ์จ์ด ์ ์ฅ์์์ Wine์ ๋ค์ด๋ก๋ํฉ๋๋ค. ์ค์น๊ฐ ์๋ฃ๋๋ฉด ์ฑ์ ๋ ๋ฒ ํด๋ฆญํ์ฌ Wine๊ณผ ํจ๊ป ์คํํ ์ ์์ต๋๋ค. ์ธ๊ธฐ ์๋ Windows ํ๋ก๊ทธ๋จ ๋ฐ ๊ฒ์์ ์ค์นํ๋ ๋ฐ ๋์์ด ๋๋ Wine์ ํตํ ๋ฉ์ง ์ธํฐํ์ด์ค์ธ PlayOnLinux๋ฅผ ์ฌ์ฉํด ๋ณผ ์๋ ์์ต๋๋ค.
Wine์ Linux์์ Windows ์ํํธ์จ์ด๋ฅผ ์คํํ๋ ๋ฐฉ๋ฒ์ด์ง๋ง Windows๊ฐ ํ์ํ์ง ์์ต๋๋ค. Wine์ ๋ชจ๋ Linux ๋ฐ์คํฌํ์์ ์ง์ Windows ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ ์คํ ์์ค Windows ํธํ์ฑ ๊ณ์ธต์ ๋๋ค. ๋ณธ์ง์ ์ผ๋ก Wine์ Windows๊ฐ ํ์ํ์ง ์๊ณ ๋ชจ๋ Windows ์์ฉ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋๋ก Windows๋ฅผ ์ฒ์๋ถํฐ ์ถฉ๋ถํ ๋ค์ ๊ตฌํํ๋ ค๊ณ ํฉ๋๋ค.
์คํฌ๋ฆฐ ์ท
Ad
์ํผ์ํ
๊ธฐ์
PHP ๋ฐ Laravel์ ์ฌ์ฉํ์ฌ ํ์ฅ ๊ฐ๋ฅํ๊ณ ํ ์คํธ ๊ฐ๋ฅํ API ์ค์ฌ ์ฑ์ ๊ตฌ์ถํ๊ธฐ ์ํ ์๋ฒฝํ ์คํ ์์ค ํ๋ ์์ํฌ์ ๋๋ค. ์์ฌ/ํ์ฌ ํด๋ผ์ด์ธํธ์ฉ OAuth2.0 ์ธ์ฆ(Laravel Passport ์ฌ์ฉ). ์ต๊ณ ๊ด๋ฆฌ์, ์ญํ ๋ฐ ๊ถํ์ผ๋ก ์๋๋ RBAC(์ญํ ๊ธฐ๋ฐ ์ก์ธ์ค ์ ์ด). ์ ์ฒด ํ ์คํธ ๊ฒ์๊ณผ ํจ๊ป ์ฟผ๋ฆฌ ๋งค๊ฐ๋ณ์ ์ง์(orderBy, sorted ๋ฐ filter). ์ฌ์ฉ์, ์ญํ /๊ถํ, ํ ํฐ ๋ฑ์ ๊ด๋ฆฌํ๋ ๋ฐ ์ ์ฉํ ๋์ ์ ๋๋ค. API ๋ฌธ์ ์์ฑ๊ธฐ, ApiDocJS(๋ฌธ์ ์ปจํ ์ด๋์์ ์ ๊ณต)๋ฅผ ์ฌ์ฉํ์ฌ PHP Docblock์์ API ๋ฌธ์๋ฅผ ์์ฑํฉ๋๋ค. CORS(Cross-Origin Resource Sharing) ๋ฐ JSONP(ํจ๋ฉ์ด ์๋ JSON)๋ฅผ ์ง์ํฉ๋๋ค. ์ค์ ID๊ฐ ์ธ๋ถ ์ธ๊ณ์ ๋ ธ์ถ๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ค์ ID์ ์๋ ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ. API ์ค๋กํ๋ง(์์ ๋๋ ํธ๋ํฝ ์๋๋ฅผ ์ ์ดํ๊ณ ์๋ฒ๋ฅผ ๋ณดํธํ๊ธฐ ์ํ ์๋ ์ ํ). ๋ฐ์ดํฐ ์บ์ฑ ์ง์(๋ง๋ค๊ธฐ, ์ ๋ฐ์ดํธ ๋ฐ ์ญ์ ์ ์๋ ์ญ์ ). URL ๋๋ ํค๋์ API ๋ฒ์ ๊ด๋ฆฌ(๊ฒฝ๋ก ํ์ผ ์ด๋ฆ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ฒ์ ๊ด๋ฆฌ).
ํน์ง
- ์ฌ์ฉ์ ์ง์ ์ค๋ฅ ์๋ต์ผ๋ก ์์ธ ์ฒ๋ฆฌ
- ์์ ETag HTTP ํค๋๋ฅผ ์ง์ํ์ฌ ํด๋ผ์ด์ธํธ ๋์ญํญ์ ์ค์ ๋๋ค.
- ์๋ ๋ฐ์ดํฐ ํ์ด์ง ๋งค๊น(๋ค์ ๋ฐ ์ด์ ๋ฐ์ดํฐ์ ๋ํ ๋ฉํ ๋งํฌ)
- ์๋ต์ ํ๋กํ์ผ๋ง ๋ฐ์ดํฐ๋ฅผ ํ์ํ๊ธฐ ์ํ ํ๋กํ์ผ๋ฌ(Laravel ๋๋ฒ๊ทธ๋ฐ ์ฌ์ฉ)
- ํธ๋์คํฌ๋จธ์ ์๋ต์์ ISO ํ์์ผ๋ก ์๋ ๋ ์ง ๋ณํ
- ๋ค์ค ์๋ต ํ์ด๋ก๋ ํ์ ์ง์(JSON API ์ฌ์ v1.0, ๋ฐ์ดํฐ ๋ฐฐ์ด ๋ฐ ์์ ๋ฐ์ดํฐ)
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
PHP
์นดํ ๊ณ ๋ฆฌ
์ด๊ฒ์ https://sourceforge.net/projects/apiato.mirror/์์๋ ๊ฐ์ ธ์ฌ ์ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค. ๋ฌด๋ฃ ์ด์ ์ฒด์ ์ค ํ๋์์ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ผ๋ก ์จ๋ผ์ธ์ผ๋ก ์คํํ๊ธฐ ์ํด OnWorks์์ ํธ์คํ ๋์์ต๋๋ค.