Weekly I Learned (7월 2주차)

YEON·2022년 7월 4일
0

Weekly I Learned (2022)

목록 보기
12/15
그 주의 화요일, 금요일을 지정 날짜로 업데이트 합니다

1. 애자일 방법론

Agile 의 사전적 의미는 민첩한, 재빠른, 좋은 것을 빠르고 낭비없게 만드는 것 이다.
즉, 애자일 방법론변화하는 요구사항에 맞게 민첩하고 재빠르게 대응하여 소프트웨어 개발을 하기 위한 방법론이다.

이전의 형식적인 단계, 형식적인 절차를 따르는 방법(ex.폭포수 모델)의 취약점을 보안하고
효율적이고 유연한 방식으로 업무(개발)을 지향하려는 목적으로 탄생하였다.

하나의 개발 모델이라기보단 여러가지의 개발 방법론 전체를 가리키며,
대표적으로 스크럼, 칸반, XP, TDD, BDD 등이 있다.

+ 추가로 포스팅을 통해 애자일 방법론에 관하여 정리 및 애자일 프로세스에 따른 개발 경험에 관하여 더욱 자세히 정리하였다.




2. CORS

CORS

CORS(Cross Origin Resource Sharing)란 '서로 다른 도메인간에 자원을 공유' 하는 것을 의미하며 기본적으로 차단되어있다.
Origin이란 출처를 말하며, Protocol + Host + Port 를 합친 것을 의미한다.

CORS의 동작

클라이언트가 다른 출처의 리소스를 요청할 때는 HTTP 프로토콜을 사용하여 요청을 보낸다.
이 때 브라우저는 요청 헤더에 Origin 이라는 필드에 요청을 보내는 출처를 함께 담아 보낸다.
이후 서버가 이 요청에 대한 응답을 할 때 응답 헤더의 Access-Control-Allow-Origin 을 비교해본 후 이 응답이 유요한 응답인지 아닌지를 결정한다.

CORS 에러 해결은 서버에서 응답 헤더에 특정 헤더를 포함 하는 방식으로 해결할 수 있다.

  • Access-Control-Allow-Origin: 특정 브라우저가 리소스에 접근이 가능하도록 허용합니다.
  • Access-Control-Allow-Method: 특정 HTTP Method만 리소스에 접근이 가능하도록 허용합니다.
  • Access-Control-Expose-Headers: 자바스크립트에서 헤더에 접근할 수 있도록 허용합니다.
  • credentials: 쿠키 등의 인증 정보를 전달할 수 있습니다.

SOP

웹 생태계에는 다른 출처로의 리소스 요청을 제한하는 것과 관련된 두 가지 정책 CORS, SOP 가 존재한다.
SOP(Same-Origin Policy)는 '같은 출처에서만 리소스를 공유할 수 있다.'는 규칙을 가진 정책이다. 하지만 다른 출처의 리소스를 사용해야하는 경우는 많으므로 'CORS 정책을 지킨 리소스 요청' 은 예외 조항으로 허용되었다.
우리가 다른 출처로 리소스를 요청한다면 SOP 정책을 위반한 것이 되고, 거기에 SOP의 예외조항인 CORS 정책까지 지키지 않는다면 아예 다른 출처의 리소스를 사용할 수 없게 된다.

출처 구분

두개의 출처가 서로 같다고 판단하는 방법 두 URL의 구성요소 중 Scheme, Host, Port 3가지만 동일하면 된다.

URL같은 출처이유
https://google.com/MypageOScheme, Host, Port 동일
https://google.com/Mypage?q=안녕OScheme, Host, Port 동일
https://user:password@google.comOScheme, Host, Port 동일
http://google.comXScheme 다름
https://goo-gle.comXHost 다름




✽ 이번 주 회고록

애자일 방법론을 다시 한번 학습하고 포스팅을 통해 정리하면서, 프로젝트때 진행하였던 개발 프로세스를 다시 한번 회고해볼 수 있었다.
개발 방법론은 다양하고 팀과 상황에 맞는 방법들을 적절하게 차용하여 사용하는 것에 대한 중요성도 다시 한번 생각해볼 수 있었다🙂







[참조]
https://hanseul-lee.github.io/2020/11/29/20-11-29-Agile/
https://kood-dev.tistory.com/2
https://blog.metafor.kr/159
https://m.blog.naver.com/potter777777/220784755910
https://milkcaramel66.tistory.com/19
https://wooaoe.tistory.com/33
https://sinsomi.tistory.com/entry/%EC%8B%A0%EC%9E%85-%EA%B0%9C%EB%B0%9C%EC%9E%90-%EB%A9%B4%EC%A0%91-%EC%95%A0%EC%9E%90%EC%9D%BC-%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B0%9C%EB%B0%9C-%EC%B4%88%EC%BD%94%EB%8D%94
https://www.youtube.com/watch?v=3y5rCRys4t0
https://velog.io/@ahsy92/%EA%B8%B0%EC%88%A0%EB%A9%B4%EC%A0%91-CORS

profile
- 👩🏻‍💻

0개의 댓글