
S3에 업로드 된 객체를 어디서든 접근가능하게 하려면 퍼블릭 액세스 설정을 해야 합니다.
업로드 된 객체 정보를 보시면 객체 URL이 있는데, 이를 통해 어디서든 접근할 수
있도록 허용하는 것입니다. 설정 없이 위의 업로드 한 객체 url을 통해 접근할 경우
This XML file does not appear to have any style information associated with it. The document tree is shown below.
위와 같은 에러가 발생하며 에러 코드는 Access Denied입니다.
간단하게 말씀드리자면 SPA 단일페이지이기 때문에 HTML이 1개라는 뜻입니다.
사이트의 미리보기는 HTML 의 META 태그 중에서도 OG(오픈그래프) 로 정의 할 수 있습니다.
리액트에서 OG 그래프를 사용하려면 어떻게 해야할까?
리액트는 SPA(단일페이지)로써 CSR(클라이언트 사이드 렌더링) 방식으로 렌더링을 합니다.
즉, HTML 파일이 1개라는 뜻입니다.
이와 반대로 SSR(서버사이드 렌더링)은 HTML이 페이지마다 있습니다.
CSR 방식으로 HTML 파일이 1개인데 페이지마다 각 컨텐츠에 맞는 미리보기를 띄우려면 어떻게 해야할까요.
리액트에는 Helmet 이라는 라이브러리를 사용 할 수 있습니다.
이 라이브러리를 통해서 JSX에서도 간단하게 META 태그를 정의 할 수 있는데요,
사용방법은 각 컴포넌트마다  메타태그 내용 을 해주시면 됩니다.
미들웨어는 액션이 디스패치 된 다음 리듀서에서 액션을 처리하기 전에 액션을 받아와서 액션을 취소시키거나 다른 종류의 액션을 추가적으로 디스패치하는등 업데이트 이전에 추가적인 작업을 할 수 있도록 도와주는 역할이다.
즉 리듀서 내의 어떤 로직이 실행되기 사이의 중간다리 역할을 해줄 함수들을 작성하는 공간
동기와 비동기의 구분은 요청받고 응답받는 시간대의 차이라고 생각합니다.요청하고-응답받는 시간을 하나의 박스(box)라로 정의한다면,동기는 박스 안에서 움직이고, 비동기는 박스를 벗어나 작동되는 원리 라고 생각합니다.

var변수는 변수선언전에 선언와 초기화단계 동시진행. 그렇기때문에 변수를 선언하기전에 호출해도 undifined로 호출이 되는 호이스팅이 발생
 
let으로 선언된 변수는 var 키워드와는 다르게 선언단계와 초기화 단계가 분리되어서 진행됨
그렇기 때문에 실행 컨텍스트에 변수를 등록했지만,
메모리가 할당이 되질 않아 접근할 수 없어 참조 에러(ReferenceError)가 발생하는 것
let으로 선언된 변수는 var 키워드와는 다르게 선언단계와 초기화 단계가 분리되어서 진행됨
그렇기 때문에 실행 컨텍스트에 변수를 등록했지만,메모리가 할당이 되질 않아 접근할 수 없어 참조 에러(ReferenceError)가 발생하는 것