[네트워크] RESTful이란, CORS란

JiKwang Jeong·2021년 11월 23일
0
post-custom-banner

RESTful

  • REST 아키텍처의 제약조건을 준수하는 애플리케이션 프로그래밍 인터페이스

  • HTTP URI를 통해 자원을 표시하고 HTTP Method를 통해 자원에 대한 처리를 표현한다. 사람이 읽을 수 있는 API라는 것이 특징이다. HTTP를 사용하기 때문에 HTTP의 특성을 그대로 반영한다. 또한 별도의 인프라 구축이 필요없다.

  • 단점으로는 명확한 표준이 존재하지 않는다. RESTful을 완전히 만족하는 API를 만들기는 매우 까다롭다. REST API가 분산환경에 적합하지 않다.(멱등성을 보장하기 힘드므로)

HATEOAS

  • 동적인 API를 제공할 수 있게된다. (모든 관련된 동작을 URI를 통해 알려준다.) 즉, 클라이언트가 API의 변화에 일일이 대응하지 않아도 된다는 장점을 가져온다.

CORS란 무엇인가?

  • CORS는 웹개발을 하다가 흔히 만날 수 있는 이슈이다. 대개는 프론트엔드 개발시에 로컬에서 API서버에 요청을 보낼 떄 흔하게 발생한다.
  • 서로다른 도메인간에 자원을 공유하는 것을 뜻한다. 대부분의 브라우저에서는 이를 기본적으로 차단하며, 서버측에서 헤더를 통해서 사용가능한 자원을 알려준다.
  • preflight request는 실제 요청을 보내도 안전한지 판단하기 위해 사전에 보내는 요청이다. OPTIONS 메서드로 요청하며 CORS를 허용하는지 확인한다. CORS가 허용된 웹서버라면 사용 가능한 리소스를 헤더에 담아 응답한다.
profile
기억보다 기록, 난리보다 정리
post-custom-banner

0개의 댓글