๋คํธ์ํฌ8 ๊ธฐ์ ์ฐ๊ณ ํ๋ก์ ํธ - ์ฑํ ๋๋ฉ์ธ : ์ค์๊ฐ ์ฑํ ๊ฐ์์ฌ๋ฌ ์๋น์ค๋ฅผ ๋ณด๋ค๋ณด๋ฉด ์ค์๊ฐ์ฑ์ด ์ค์ํ ์๋น์ค๋ค์ด ์์ต๋๋ค. ์๋๋ฐฉ๊ณผ ํจ๊ป ๊ฒจ๋ฃจ๋ ๊ฒ์์ด๋, ์ฃผ์์ด๋ ๊ฒฝ๋งค ๋ฑ๋ฑ ์ฌ๋ฌ๊ฐ์ง๋ฅผ ๋ ์ฌ๋ฆด ์ ์๋๋ฐ์. ๊ทธ์ค์ ์ฐ๋ฆฌ์๊ฒ ์น์ํ ์๋น์ค๋ก๋ ์ฑํ ์๋น์ค๊ฐ ์์ต๋๋ค. ํ ๋ํ ๋ฐฉ์์ ์๋ก ์๋ก ์ฃผ๊ณ ๋ฐ๋ ๋ฉ์ธ์ง๋ฅผ ๋ฐ๋ก๋ฐ๋ก ์ฃผ๊ณ ๋ฐ์์ผํ๋๊ฒ ์ค์ํ ์ฑํ ๋ ์ค์๊ฐ์ฑ์ด ์ค์ํ์ฃ ! ์ ํฌ ํ๋ก์ ํธ์์๋ ์๋ ํ๋งค ์ํ์ ๋ํ ๋ค๊ณ ๊ธฐ๋ฅ์ด ์์๊ณ , ์ด๋ฐ ๋ค๊ณ ๋ฅผ ํ๊ธฐ ์ํด ์ฑํ ์๋น์ค ๋์ ์ด ํ์ํ๋ค๊ณ ๋๊ผ์ต๋๋ค. ๊ฐ๊ฒฉ ์ ์ํ๊ธฐ๋ฅผ ๋๋ฅด๋ฉด 1๋1 ์ฑํ ๋ฐฉ์ด ์๊ธฐ๊ณ ๊ฐ๊ฒฉ ๋ค๊ณ ๋ฅผ ํ ์์๋ ์ฑํ ์ด ๊ฐ๋ฅํด์ง์ฃ .์ฑํ ๋๋ฉ์ธ์ ๋ํ ์ค๊ณ๋ ์๋ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์๊ณ , ์ค๋์ ์ค์๊ฐ ์ฑํ ์ ์ด๋ป๊ฒ ๊ตฌํํ๋์ง์ ๋ํ ์ด์ผ๊ธฐ๋ฅผ ํด๋ณด๊ฒ ์ต๋๋ค.https://programmer-may.tist.. FastCampus X Yanolja TechSchool 2024. 1. 27. CORS ์๋ฌ ๊ฐ๋ ๊ณผ ํด๊ฒฐ๋ฒ (Spring MVC, Spring Security) ์ด์ฌํ ๋ง๋ ํ๋ก์ ํธ๋ฅผ EC2์ ๋์ ์๋ฒ๋ฅผ ํ์ฑํ ์ํค๊ณ ํ๋ก ํธ ์๋์ ๋ก์ปฌ์์ ํ ์คํธ๋ฅผ ํด๋ณด๋ ค ํ๋๋ฐ, ๋ ์ฉ?! ํ์ด์ง์ ๋ฐ์ดํฐ๋ ๋ณด์ด์ง ์๊ณ , ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ผ๋ฉด ๋นจ๊ฐ ์๋ฌ๋ค๋ง ๊ฐ๋ํ์ต๋๋ค. NBA์ ์ฒซ ๋ฐ๊ธธ์ ๋ด๋๋ ์ ์ธ ์ ์๋ฅผ ํ์ํด์ฃผ๋ฉฐ ๋์ ๊ฐ๊ณ ์์ ํฌ๋ฅผ ์ฑ๊ณต์ํค๋ฉฐ "Welcome to NBA"๋ฅผ ์ธ์น๋ ๋ง์ดํด ์กฐ๋ ๋ง๋ฅ, CORS ์๋ฌ๋ ์น๊ฐ๋ฐ์ ํ๋ ๊ฐ๋ฐ์๋ค์๊ฒ ์น๊ฐ๋ฐ ์ธ๊ณ๋ฅผ ํ์ํด์ฃผ๋ฉฐ ๊ฒช๊ฒ๋๋ ํต๊ณผ์๋ก ๊ฐ์ ๋ ์์ ๋๋ค.ํ๋ก์ ํธ๋๋ CORS์๋ฌ๋ก ์์ฒญ ๊ณ ์์ ํ์ฌ ๊น๋จน์ง ์๊ฒ ๊ณต๋ถ์ ๊ธฐ๋ก์ ํ๋ คํฉ๋๋ค. ๐ค CORS ๋?CORS ๋ Cross-Origin Resource Sharing ์ด๋ผ๋ ๋ป์ ๋๋ค. ์ด ๋ฌธ์ฅ์ ์ง์ญํ๋ฉด "๊ต์ฐจ ์ถ์ฒ ๋ฆฌ์์ค ๊ณต์ ์ ์ฑ "์ด๋ผ๊ณ ํด์ํ ์ ์๋๋ฐ, ์ฌ๊ธฐ์.. Web programming 2023. 12. 20. Web programming : RESTful URL ์ค๊ณ ๊ท์น URI(Uniform Resource Identifier)์ URL(Uniform Resource Locator) URI๋ ๋คํธ์ํฌ ์์ ์๋ ํน์ ๋ฆฌ์์ค๋ฅผ ์๋ณํ๋ ํตํฉ ์์ ์๋ณ์(Uniform Resource Identifier)๋ฅผ ์๋ฏธํ๋ค. URL์ ์ธํฐ๋ท์ ์๋ ๋ฆฌ์์ค๋ฅผ ๋ํ๋ด๋ ํตํฉ ๋ฆฌ์์ค ์๋ณ์๋ฅผ ์๋ฏธํ๋ฉฐ, ์ฐ๋ฆฌ๊ฐ ํํ๋ค ์ด์ผ๊ธฐํ๋ ์น ์์ ์ฃผ์๋ฅผ ์๋ฏธํ๋ค. URI๋ URL์ ์์ ๊ฐ๋ ์ผ๋ก ๋ณผ ์ ์๋ค. URI๋ ๋ฆฌ์์ค๋ฅผ ์๋ณํ๋ ์๋ณ์ ์ญํ ์ ํ๊ณ , URL์ ์๋ณ์ ์ญํ ์ค์์๋ ๋ฆฌ์์ค์ ์์น๋ฅผ ๊ฐ๋ฆฌํจ๋ค. ์) http://www.restapi.example.com/member/1 ๋ ๋ฆฌ์์ค์ ์์น๋ฅผ ๊ฐ๋ฆฌํค๋ URL์ด๋ผ๊ณ ํ ์ ์๋ค. ์) URI ์ ์์๋ก๋ ๋์๋ฅผ ์๋ณํ๋ ๊ตญ์ ํ์ค๋์๋ฒํธ.. Web programming 2023. 12. 13. ์๋ฒ์ HTTPS ์์ฒญ ๋ณด๋ด๊ธฐ 1ํธ - (feat. Mixed Content ์๋ฌ ํด๊ฒฐ) ๊ฐ์์ต์ข ์ ์ผ๋ก ํ๋ก ํธ์๋์ ๋ฐฑ์๋์ ์์ ์ด ๋๋ ํ ์คํธ๋ฅผ ํด๋ณด๊ธฐ ์ํด, Vercel์ ๋ฐฐํฌ๋ ์น ํ์ด์ง์์ ํ ์คํธ ์๋ฒ EC2 ์ธ์คํด์ค API ์์ฒญ์ ๋ณด๋๋ค. ํ์ง๋ง ์ฐ๋ํ์๋ง์ ์๋ฌ๋ฅผ ๋ง๋ ์ ์์๋ค. Mixed Content ๋?Mixed Content ์๋ฌ๋ ์น ํ์ด์ง๊ฐ HTTPS๋ฅผ ํตํด ๋ก๋๋๋ฉด์, HTTP๋ฅผ ํตํด ๋ก๋๋๋ ๋ฆฌ์์ค(์: ์ด๋ฏธ์ง, ์คํฌ๋ฆฝํธ, ์คํ์ผ์ํธ ๋ฑ)๋ฅผ ํฌํจํ ๋ ๋ฐ์ํ๋ค. ์ด๋ฌํ ์ํฉ์ ๋ณด์ ์ํ์ ์ด๋ํ ์ ์์ผ๋ฏ๋ก, ๋๋ถ๋ถ์ ํ๋ ๋ธ๋ผ์ฐ์ ๋ Mixed Content๋ฅผ ํ์ฉํ์ง ์๊ณ ์ฐจ๋จํ๋ค.Mixed Content์ ์ข ๋ฅPassive Mixed Content (Display Mixed Content)ํ์ด์ง๊ฐ ์ฌ์ ํ HTTPS๋ก ๋ก๋๋์ง๋ง, HTTP๋ฅผ ํตํด ๋ก๋๋ ๋ฆฌ์์ค.. DevOps/AWS 2023. 12. 8. (22.11.02)Java ํ๋ก๊ทธ๋๋ฐ: ๋คํธ์ํฌ ๋ฐ์ดํฐ ํต์ , Stream, ์น์๋ฒ ํ๋ก๊ทธ๋๋ฐ ๋ฉ์์ง์ ์์ ์ ์ก์ ์๋ฅผ ๊ฐ์ฒดํ ํ์ฌ ๊ฐ์ฒด๋ฅผ ๋ฐ์ดํธ ๋ฐ์ดํฐ๋ก ๋ฐ๊พธ์ด ๋ฐ์ดํฐ ์ก์์ ํ๊ธฐ ChatMsg ํด๋์ค ์ฝ๋ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 import java.io.Serializable; public class ChatMsg implements Serializable{ private String sender; private String receiver; private String message.. Java programming 2022. 11. 2. (22.11.01)Java ํ๋ก๊ทธ๋๋ฐ: ๋คํธ์ํฌ ๋ฐ์ดํฐ ๊ต๋ฅ(Client - Server) ํด๋ผ์ด์ธํธ๊ฐ ์ ์ํ์ฌ ์๋ฒ๋ก ๋ฉ์์ง๋ฅผ ์ ์กํ๋ฉด ์๋ฒ์ธก์์ ๊ทธ ๋ฉ์์ง๋ฅผ ์์ ํ์ฌ ๋ค์ ๊ทธ ํด๋ผ์ด์ธํธ์๊ฒ ์ ์กํ๋ ๊ธฐ๋ฅ์ ์์ฑํด๋ณด๋ผ. ํด๋ผ์ด์ธํธ ์ธก์์๋ ํค๋ณด๋์์ ๋ฉ์์ง๋ฅผ ์ ๋ ฅ ๋ฐ์์ ์๋ฒ๋ก ์ ์กํด์ผํ๋ค. (์์ฝ ์๋ฒ) Server ํด๋์ค ์ฝ๋ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 import java.io.*; import java.net.*; public class Server { public static void main(String[] args) { try.. Java programming 2022. 11. 1. (22.10.31)Java ํ๋ก๊ทธ๋๋ฐ: Thread, Stream ์ค์ต ๋คํธ์ํฌ๊ฐ ์ํต ํค๋ณด๋์์ ์ซ์๋ฅผ ์ ๋ ฅํ ๋๋ง๋ค ์ ๋ ฅ๋ ์์ ๊ตฌ๊ตฌ๋จ์ด ํ๋ฉด์ ํ์๋๋ ๊ธฐ๋ฅ์ ๋ฌดํํ ๋ฐ๋ณตํ๋ค. ๊ทธ์ ๋์์ ์ค๋ ๋ ์ง๋ฅผ 1์ด์ ํ๋ฒ์ฉ dates.txt ํ์ผ์ ํํ์ผ๋ก ๊ธฐ๋กํ๊ธฐ๋ฅผ ๋ฌดํํ ๋ฐ๋ณตํ๋ค. ๋ง์ฝ ์ด์ฉ์๊ฐ ์ซ์๋ฅผ ์ ๋ ฅํ๋ ๋์ ๋ฌธ์๋ฅผ ์ ๋ ฅํ๋ฉด, ๋ชจ๋ ๊ธฐ๋ฅ์ด ์ ์ง๋๊ณ ํ๋ก๊ทธ๋จ์ด ์ข ๋ฃ๋๋๋กํ๋ค. Thread๋ฅผ ์ข ๋ฃํ๋ ค๋ฉด ์ฐ๋ ๋๊ฐ ์คํํ๋ ๋ฌดํ ๋ฃจํ๋ฅผ ์์ ํ ์ข ๋ฃํ๋ฉด ๋๋ค. Daemon ์ฐ๋ ๋ : ์ด๋ค ์ฐ๋ ๋๊ฐ ์ข ๋ฃํ ๋, ๊ทธ ์ฐ๋ ๋๊ฐ ์์ฑํ ํ์ ์ฐ๋ ๋๋ ํจ๊ป ์ข ๋ฃ๋๋ ์ฐ๋ ๋ Main() ๋ฉ์๋๋ ์๋ฐ์์ ์ง์ํ๋ Main Thread๊ฐ ์คํํ๋๋ก ๋์ด ์๊ณ , Main() ๋ฉ์๋ ์์์ ์์ฑ๋๋ ์ฐ๋ ๋๋ Main Thread์ ํ์ (์์) ์ฐ๋ ๋์ธ ์ ์ด๋ค. ๋ถ๋ชจ ์ฐ๋ ๋๊ฐ ์ข ๋ฃํ ๋ ๊ทธ ์์์ ์์ฑ๋ .. Java programming 2022. 10. 31. (22.10.09)Computer Science: ๋คํธ์ํฌ(NETWORK) ๊ธฐ์ด,LAN ๊ณผ WAN, bit ์ byte ๋คํธ์ํฌ ๋? ๋คํธ์ํฌ๋ ๋์ ์๋ฏธ์์ ์ฐ๊ฒฐ๋ง์ด๋ผ ์ฐ์ธ๋ค. ๋น๋จ ์ปดํจํฐ ๋ฟ๋ง ์๋๋ผ ์ฌ๋๊ณผ ์ฌ๋, ๋๋ก์ ์ฒ ๋, ๋ฌผ๋ฅ ๋ฑ ์๋ก์๋ก ์ฐ๊ฒฐ๋์ด ์๋์ง๋ฅผ ๋ผ ์ ์๋ ๊ณต๋์ฒด, ๋ง์ ๋คํธ์ํฌ๋ผ ํ ์ ์๋ค. ๊ทธ๋ผ ์ปดํจํฐ ๋คํธ์ํฌ๋ ๋ฌด์์ผ๊น? ์ปดํจํฐ ๋คํธ์ํฌ ๋ํ ๋ง ๊ทธ๋๋ก ์ปดํจํฐ์ ์ปดํจํฐ์ ์ํธ์์ฉ์ ๋งํ๋ค. ์ปดํจํฐ๋ ํ๋์ ํ๋์ผ์๋ ์๋ ์ฌ๋ฌ ๋์ ์ปดํจํฐ ๊ฐ์ ๋คํธ์ํฌ๋ฅผ ํ์ฑํ ์ ์๋ค. ์ด๋ ๊ฒ ํ์ฑ๋ ๋คํธ์ํฌ์์ ๋ง์ ์ ๋ณด๋ค์ด ์ค๊ฐ๋ค. ์ฐ๋ฆฐ ๊ทธ๋ฐ ์ ๋ณด๋ค์ ๋ฐ์ดํฐ๋ผ ๋ถ๋ฅด๊ณ ๋คํธ์ํฌ๋ฅผ ํตํด ์ปดํจํฐ ๊ฐ์ ํ์ผ ์ ์ก, ์น ์ฌ์ดํธ ์ด๋, ๋ฉ์ผ ์ก·์์ ๋ฑ์ ํ ์ ์๋ค. ์ด๋ ์ฐ๋ฆฐ ๋ฐ์ดํฐ๋ฅผ ํจํท(packet)์ด๋ ๊ท์น์ ์ด์ฉํ์ฌ ์ ์กํ๋ค. ํจํท์ด๋ ์ปดํจํฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ์ ์ก๋๋ ๋ฐ์ดํฐ์ .. Computer Science 2022. 10. 9. ์ด์ 1 ๋ค์