본문 바로가기

분류 전체보기105

[JavaScript] Set Set중복되지 않는 유일한 값들의 집합요소에 순서가 없다.인덱스로 요소에 접근할 수 없다.Set 객체 생성const set1 = new Set();console.log(set); // Set(0) {}const set2 = new Set([1, 2, 3, 3]);console.log(set); // Set(3) {1, 2, 3}const set3 = new Set('hello');console.log(set); // Set(4) {"h", "e", "l", "o"}//중복 제거const uniq = array => array.filter((v, i, self) => self.indexOf(v) === i);const uniq = array => [ ... new Set(array)];// 두 코드 실행 .. 2023. 2. 16.
[JavaScript] 이터러블 이터러블스프레드 문법하나로 뭉쳐 있는 여러 값들의 집합을 전개하여 개별적인 값들의 목록으로 만드는 것// ... [1, 2, 3]은 [1, 2, 3]을 개별 요소로 분리한다.(-> 1, 2, 3)console.log(...[1, 2, 3]); // 1 2 3consolg.log(...'Hello'); // H e l l o배열 디스트럭처링 할당(구조 분해 할당)구조화된 배열과 같은 이터러블 또는 객체를 destructuring 하여 1개 이상의 변수에 개별적으로 할당하는것const arr = [1, 2, 3];//1, 2, 3을 각각 one, two, three에 개별적으로 할당const [one, two, three] = arr;console.log(one, two, three); // 1 2 3이터레.. 2023. 2. 16.
[NodeJS] CORS 에러 해결 Introduction 프론트에서 nodeJS 서버의 API에 요청할 때 발생하는 CORS 에러와 해결책을 알아보려 한다. 회원가입 페이지를 구현하던 중, 회원 정보를 nodeJS로 전달할 때 다음과 같은 에러가 발생했다. CORS란? 먼저 이런 CORS가 등장한 이유는 SOP(동일 출처 정책) 때문이다 SOP는 동일한 출처의 리소스만 접근 가능하도록 하는 정책이다. 따라서 다른 출처의 리소스는 접근할 수 없다. ☞ 여기서 동일 출처란, 두 url의 프로토콜, 포트, 호스트(도메인)가 모두 같은 경우를 말한다. http://localhost:3000/auth/join 의 경우 ① 프로토콜: http ② 호스트(도메인): localhost ③ 포트: 3000 이며, 이 세 가지가 모두 일치해야 동일 출처라.. 2023. 2. 15.
[React] 로그인 JWT 토큰 처리 Introduction JWT 에 대해서 알아보고, JWT 토큰 발급 후 토큰 처리 방법에 대해 알아보려 한다. JWT란? JWT는 JSON Web Token의 약자로, 인증에 필요한 정보들을 암호화시킨 JSON 토큰을 의미한다. 서버에서 JWT 토큰의 유효 기간을 설정하고, 클라이언트에서 서버에 데이터 요청할 시 JWT를 HTTP 헤더에 포함하여 서버가 유효 여부를 확인 할 수 있도록 한다. ① 서버에 데이터를 보낸 후 JWT를 response로 받는다. ② JWT 값인 response.data를 로컬 스토리지와 응답 헤더에 넣는다. async function postInfo(e) { try { e.preventDefault(); const response = await axios .post("http.. 2023. 2. 15.
[NodeJS] MySQL 과 연동 먼저 mysql 에서 스키마와 테이블을 만들어준다. mysql2 모듈을 설치한다. npm install mysql2 mysql2 모듈을 가져온 후 객체 형태로 데이터베이스의 기본 정보를 설정해준다. const mysql = require('mysql2'); const conn = { host: 'localhost', user: 'root', port: '3305', database: 'test', password: '설정한 비밀번호' }; mysql2이 아닌 mysql 모듈을 사용하면 발생하는 에러 → 찾아보니 mysql 비밀번호를 설정해주면 된다고 하는데 해도 자꾸 에러가 나서 그냥 처음부터 mysql2 모듈 사용! 데이터베이스 커넥션을 생성하고 해당 데이터베이스에 접근한다. const connecti.. 2023. 2. 15.
[NodeJS] Node 서버 생성 client 와 server client가 특정 domain으로 접근할 경우, client는 server에 요청(request)을 보내고 server는 client에 응답(response)을 보낸다. http 모듈 HTTP(HyperText Transfer Protocol)는 TCP/IP를 기반으로 둔 프로토콜 HTTP 웹 서버와 클라이언트를 생성하는 것과 관련된 모든 기능을 담당한다. //http 모듈 불러오기 const http = require('http'); server 객체 1. server.listen(port\[, callback\]) 2. server.close(\[callback\]) //server 생성 const server = http.createServer(); //서버를 종료하지.. 2023. 2. 14.