> 기초/백그라운드
-
TIL-2024.04.18 - Basic - Origin & Site (보험)> 기초/백그라운드 2024. 4. 18. 23:18
질문: Same-Origin , Cross-Origin & Same-Site, Cross-Site 이 뭐고, 차이가 어떻게 돼 ? Same-Origin (동일 출처) 정의: - Same-Origin은 두 리소스(페이지 또는 스크립트 등)의 출처(Origin)가 동일한 경우. - Origin는 프로토콜(예: http, https), 호스트(도메인), 포트 번호가 전부 동일. 예시: https://example.com/page1 와 https://example.com/page2 http://subdomain.example.com 와 http://subdomain.example.com https://example.com:8080 와 https://example.com:8080 Cross-Origin (다른 출..
-
TIL-2024.04.17 - Basic - JWT - 1.5 - Token, XSS & CSRF (Refresh Token & Access Token 저장 위치)> 기초/백그라운드 2024. 4. 17. 19:02
질문: 1. 브라우저에서 변수는 어디다가 저장할 수 있나요 ? 2. 이와같은 저장소 중에서, Refresh Token 과 Access Token 은 어디다가 저장을 해야될까? 3. 왜 이렇게 저장을 해야되나요? 1. 브라우저의 변수 저장소: 1. Cookie 2. LocalStorage & Session Storage 3. Memory 1) Cookie - 사이트가 사용자의 컴퓨터에 저장하는 작은 데이터 조각 - 서버로 요청을 할때마다 해당 서버에 해당되는 쿠키를 보냄 - JS로 접근 가능 (데이터를 저장하고 데이터를 검색할 수 있다는 것을 의미) 2) Local & Session Storage - 브라우저의 클라이언트 측 저장 공간 - JS로 접근 가능 (데이터를 저장하고 데이터를 검색할 수 있다는 것..
-
TIL-2024.04.16 - Basic - JWT (JSON Web Token)> 기초/백그라운드 2024. 4. 16. 18:29
질문: JWT 가 뭐야 ? JWT가 어떤 구성을 가지고, 어떻게 작동해 ?? 사용하는 이유가 어떻게 되 ? JWT (JSON WEB TOKEN) 정의 - 웹 애플리케이션에서 사용자 인증 및 권한 부여를 위한 토큰 기반 인증 시스템 JWT 구성 - JWT는 세 부분으로 구성: Header, Payload, Signature 1. Header - 토큰의 유형과 사용하는 암호화 알고리즘을 지정 { "alg": "HS256", "typ": "JWT" } 2. Payload - 실제로 전송할 데이터를 포함. - 클레임(claim)이라고도 불리며, 토큰에 담길 정보의 조각들을 의미 - 클레임은 세 가지 유형으로 나뉩니다: 1. Registered Claims: 토큰에 대한 정보를 제공하는 표준 클레임으로 발급자(i..
-
TIL-2024.04.12 - Basic - OOP. 객체지향프로그래밍(OOP)> 기초/백그라운드 2024. 4. 12. 17:18
질문: OOP 가 뭐야? 왜 OOP를 사용하는 거야? 1. OOP (Object Oriented Programming) 정의 - 말 그대로, 객체의 관점에서 프로그래밍하는 것을 의미 (자세히 말하자면 클래스는 설계도고 직접일을 하는 구현체는 인스턴스) - OOP는 객체를 기준으로 코드를 나누어 구현하는데, JAVA의 경우 그 구성 부분 단위가 클래스. // Person 클래스 정의 public class Person { // 필드(속성) private String name; private int age; // 생성자 public Person(String name, int age) { this.name = name; this.age = age; } // 메서드 public void introduce() {..
-
TIL-2024.04.11 - Basic - SOLID> 기초/백그라운드 2024. 4. 11. 20:38
질문: 1. SOLID 에 대해 알려줘 1. SOLID - 객체 지향 프로그래밍에서 소프트웨어 설계 원칙의 다섯 가지 원칙 - 이러한 원칙들은 소프트웨어의 유연성, 확장성, 유지 보수성을 향상시키고, 코드의 재사용성을 높이기 위해 고안 2. 종류 1. S - Single Responsibility Principle (단일 책임 원칙): 한 클래스는 하나의 책임만 가져야 합니다. 이렇게 하면 클래스가 더 작고 응집력이 높아지며, 유지 보수가 용이 // 예시: 주문 관리 시스템 // 잘못된 설계: Order 클래스가 주문 데이터베이스 접근, 주문 유효성 검사, 주문 정보 출력 등의 다양한 책임 지님 class Order { constructor() { this.items = []; } addItem(item..
-
TIL-2024.04.01 - Network - TCP & UDP> 기초/백그라운드 2024. 4. 1. 23:29
질문: TCP와 UDP는 무엇인가? 두개의 차이점은 무엇인가? 배경: - 네트워크 계층들 중 전송 계층에서 사용하는 프로토콜 - 전송계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하는 계층으로, 데이터의 전달을 담당 - 데이터를 보내기 위해 사용하는 2개의 프로토콜 TCP & UDP TCP (Transmission Control Protocol): - 연결 지향형 프로토콜 (통신하기 전에 연결을 설정하고, 통신이 완료되면 연결을 해제). - 신뢰성 있는 데이터 전송을 보장 (데이터를 순차적으로 보내고, 손실된 데이터를 재전송하고, 중복된 데이터를 제거). - 흐름 제어(Flow Control)와 혼잡 제어(Congestion Control) 기능을 제공하여 네트워크 혼잡을 방지하고 효율적인 통신을 ..