Node.js - express (16) CORS
·
Node/Express
이번 포스팅에서는 CORS에 대해서 알아보고자 한다. CORS ?? 서버 나누기 (프론트서버 & 백서버) app.use( cors( ) ) 1. CORS ?? CORS란 "Cross-Origin Resource Sharing"의 약자로 "교차 출처 리소스 공유"라는 의미를 갖고 있다. 위키백과를 살펴보면 다음과 같은 설명이 나온다. 교차 출처 리소스 공유(CORS)는 웹 페이지 상의 제한된 리소스를 최초 자원이 서비스된 도메인 밖의 다른 도메인으로부터 요청할 수 있게 허용하는 구조이다. (출처 - 위키백과) 브라우저에서는 보안상의 이슈로 교차 출처(cross-origin)의 HTTP 요청들을 제한하게 된다. 쉽게 얘기해서 브라우저를 열고 네이버에 접속한 상태에서 브라우저의 javascript..
Node.js - express (15) Ajax - fetch , axios
·
Node/Express
이번 포스팅에서는 JavaScript에서 지원하는 내장객체인 fetch , 그리고 외부라이브러리 axios를 이용해서 Ajax 기능을 구현해보고자 한다. promise fetch axios 1. promise fetch 와 axios를 사용하기 위해서는 promise(프로미스) 객체에 대한 이해가 선행되어야 한다. 프로미스 객체가 어떤 것인지 간략하게 알아보고 넘어가자. (심도 있는 설명은 나중에 따로 포스팅 할 예정,,) 프로미스 객체를 사용하는 이유에 대해 먼저 간단히 언급하면, 다음과 같이 함수 안에 비동기 코드가 들어갈 경우 함수를 호출해서 비동기의 결과값을 얻는 것이 불가능하기 때문이다. 함수를 사용했을 때 비동기의 결과물을 얻고 싶은 경우 사용하는 것이 프로미스 객체이다. 즉, 비..
Node.js - express (14) Ajax - XMLHttpRequest( )
·
Node/Express
이번 포스팅에서는 Ajax에 대해 알아보고 XMLHttpRequest를 이용해서 Ajax를 사용해보고자 한다. Ajax XMLHttpRequest 1. Ajax Ajax는 Asynchronous JavaScript and XML의 약자로 JavaScript와 XML을 이용한 비동기적 정보교환 기법이다. Ajax를 사용해서 통신을 하게 될 경우 URL이 바뀌지 않고도 서버에 요청을 보낼 수 있게 된다. 지금까지의 방식은 URL을 통해 서버에 요청을 보내면 서버쪽에서 해당 요청에 대한 응답을 건내주는 방식이었다. Ajax는 이와는 다르게 브라우저의 JavaScript에 있는 특정 함수를 사용해서 URL 없이도 서버에 요청을 보낼 수 있는 방식이다. URL을 통해 서버에 요청을 보내는 방식에서는 ..
Node.js - express (13) JWT 로그인 인증
·
Node/Express
이번 포스팅에서는 JWT 방식으로 로그인 인증을 구현해 보고자 한다. 자세한 개념과 구현방식은 이전 글에서 정리했으므로 이번에는 코드 위주로 빠르게 훑어 보도록 하자. (이전 글 참고) 2022.03.03 - [Node.js/express] - Node.js - express (12) Buffer , Hash , JWT Node.js - express (12) Buffer , Hash , JWT 이번 포스팅에서는 JWT 방식을 이용해 로그인 인증을 구현할 때 사용되는 Buffer와 Hash, 그리고 JWT의 개념에 대해 짚고 넘어가 보고자 한다. Buffer?? Hash?? JWT 1. Buffer ?? 우리가 사용하는 컴퓨 bitkunst.tistory.com 위에 나와있는 영상은 앞으로 ..
Node.js - express (12) Buffer , Hash , JWT
·
Node/Express
이번 포스팅에서는 JWT 방식을 이용해 로그인 인증을 구현할 때 사용되는 Buffer와 Hash, 그리고 JWT의 개념에 대해 짚고 넘어가 보고자 한다. Buffer?? Hash?? JWT 1. Buffer ?? 우리가 사용하는 컴퓨터는 이진수로 데이터를 저장하고 표현한다. 예를 들어 문자 "A" 라는 값을 표현할 때 A 그대로를 표현하는 것이 아닌 이진수 형태로 A를 표현하게 되는 것이다. 이진수에서 1 혹은 0으로 되어있는 자리를 bit(비트)라고 하는데 1byte=8bit를 의미하고 8bit로는 256가지(2^8=256)의 데이터를 표현하는 것이 가능하다. 1nibble(니블)=4bit를 의미하고 있기 때문에 1 byte = 8 bit = 2 nibble의 관계가 된다. 4bit를 이용..