본문 바로가기

Node.js11

12/25 로그인(인증) 세션 만료 로그인(인증) 세션 만료 먼저 인증과 인가에 대해 알아보자. 인증 (= 로그인) Authentication 로그인 왜 필요한가? 로그인을 통해 가입된 유저인지를 확인 -> 특정 기능 사용 가능 쇼핑몰에서 상품을 볼 때는 로그인 필요X (단순히 데이터를 조회하는 용도, 크리티컬한 데이터가 아닌 공개적인 데이터) 쇼핑몰에서 장바구니 담을 때 로그인 필요O 쇼핑몰 상품 구매 시 로그인 필요O 마이 페이지 로그인 필요O ... 인가 Authorization 권한 , 허가 부여 ex. 같은 사이트 내에 관리자/고객에 따라 접근할 수 있는 페이지가 다름 인증 👉 관리자든 고객이든 인증을 통해 사이트에 가입된 사용자라는 것을 증명하는 것 인가 👉인증 후에 로그인한 사용자가 해당 페이지에 접근 권한이 있는가를 확인하는.. 2023. 12. 25.
12/22 express.js 유효성 검사 유효성 검사 validation "사용자가 입력한 값"에 대한 유효성(=타당성)을 검사(확인)하는 것 (= 사용자 요청에 대한) userId : 값이 존재, 숫자 채널 name : 숫자 X, 문자열, 2자 이상 외부 모듈 "express-validator" 설치 npm install express-validator const { body, validationResult } = require("express-validator"); router .route("/") .post( [ body("userId").notEmpty().isInt().withMessage("숫자 입력 필요"), body("name").notEmpty().isString().withMessage("문자 입력 필요"), ], (req, .. 2023. 12. 25.
12/21 DB 모듈화, DB연동 후 회원 API/코드, 채널 API/코드 수정 DB 모듈화 mariadb.js // get the client const mysql = require("mysql2"); // create the connection to database const connection = mysql.createConnection({ host: "localhost", user: "root", password: "root", database: "Youtube", dateStrings: true, }); module.exports = connection; //외부에서 사용할 수 있도록 모듈화 users.js //db 모듈 가져오기 const conn = require("../mariadb"); // db에서 데이터 가져오기 conn.query("SELECT * FROM `u.. 2023. 12. 24.
12/14~15 빈 객체 확인 방법(How to Check if an Object is Empty in JavaScript ) How to Check if an Object is Empty in JavaScript – JS Java isEmpty Equivalent An object is one of the most commonly used data types in programming. An object is a collection of related data stored as key-value pairs. For example: let userDetails = { name: "John Doe", username: "jonnydoe", age: 14, } When working with objects, you www... 2023. 12. 18.
12/13 express.js ==과 ===의 차이, 예외처리 고도화 핸들러(handler)? HTTP request가 오면 자동으로 호출되는 메서드 노드 : 콜백함수로 핸들러를 사용한다. app.HTTPMETHOD(path, 핸들러) cf. 스프링에서는 컨트롤러라는 파일 안에서 사용한다. 과일 개별 조회 : fruits 객체 중에 id값이 url에 입력한 id 값(params.id)과 같은 객체를 찾는다. fruits 배열 인덱스로 접근해서 객체 찾기 const fruits = [ { id: 1, name: "apple" }, { id: 2, name: "banana" }, { id: 3, name: "blueberry" }, { id: 4, name: "mango" }, ]; // 방법 1 - fruits 배열 인덱스로 접근해서 객체 찾기 app.get("/fruits.. 2023. 12. 18.
12/11 express.js postman, express.js에서 사용되는 메소드들, 속성들 현재 프로젝트 화면 구현, 개발하지 않은 상태이다.HTTP Method 중 GET, DELETE는 URL을 통해 필요한 데이터를 받을 수 있어 API 구현 테스트를 할 수 있었다.하지만 POST, PUT은 웹페이지 body(본문)에 데이터를 담아 요청을 전송하기때문에 화면 구현 없이 API 테스트를 할 수 없었다. 그래서 특정 주소로 정보를 보내줄 클라이언트(프론트 엔드)가 아직 개발되지 않았다면, 서버 프로그램이 들어온 API 요청에 대해서 제대로 동작하는지 확인할 수 있게 도와주는 API 플랫폼인 POSTMAN을 설치했다. POSTMAN 설치 Postman API Platform | Sign Up for Free Postman is an API platform for building and using.. 2023. 12. 14.
12/8 map object, express String만 담던 Map -> 객체로 Key(id) Value(product) 1 "Notebook" / 2000000 / "느껴보지 못한 가벼움" 2 "Cup" / 7900 / "크리스마스 에디션 컵" 3 "iPad" / 870000 / "한층 더 업그레이드 된 아이패드" 4 "Poster" / 3900 / "메리 크리스마스!" let db = new Map(); let notebook = { productName: "Notebook", price: 2000000, description: "느껴보지 못한 가벼움", }; let cup = { productName: "Cup", price: 7900, description: "크리스마스 에디션 컵", }; let ipad = { productName: .. 2023. 12. 14.
12/7 express.js - req.params 형변환, JS 비구조화, JS 네이밍, Map 객체 req.params를 통해 받은 1이 숫자가 아닌 문자로 인식해 문자열로 반환한다. req.params를 통해 받은 숫자는 자료형이 문자열임을 알 수 있다. req.params를 통해 받은 값을 숫자 10과 비교하여 10보다 크면 위와 같은 문구를 콘솔창에 출력하도록 했다. 하지만 req.params는 문자열만 반환하기때문에 조건문의 비교가 될 수 없다. 콘솔창을 확인해보니 조건문이 충족되어 실행문이 작동했다. 그래서 콘솔창에 "url로 전달받은 숫자가 10보다 크네요"라는 문구가 출력되었다. 문자열과 숫자는 비교될 수 없다. 그렇지만 비교되어 작동했다. 다른 언어에서는 일어날 수 없는 일이다. 이것은 자바스크립트의 오류이다. 자바스크립트가 문자형인 숫자를 숫자로 인식하고 있지만 우리는 의도한 자료형으로.. 2023. 12. 14.
12/6 express.js - res.json, req.params 객체? json? javascript object notation (자바스크립트 객체 모양) let person = { name: "yun", age: "1384" } "Node.js를 공부해보자. 라는 책" - 상품명: Node.js를 공부해보자 - 상품가격: 20000 - 상품소개: 이 책 좋다. 왜? 설명잘되어있음 let book = { title: "Node.js를 공부해보자", price: 20000, description: "이 책 좋다. 왜? 설명잘되어있음" } send 메서드 2023. 12. 14.
12/5 HTTP method, node.js 특징, var/let/const 4주 2일차 HTTP method HTTP에 담아보내는 목적 클라이언트와 서버 사이에 이루어지는 요청(request)과 응답(response) 데이터를 전송하는 방식 즉, 서버가 수행해야 할 동작을 지정하여 요청을 보내는 방법 HTTP는 프로토콜이기때문에 규약이다. 그래서 정해진 용어들이 있다. 그 용어들을 외울 필요는 없고 상황에 맞게 검색해서 사용하면 된다. HTTP request methods - HTTP | MDN HTTP defines a set of request methods to indicate the desired action to be performed for a given resource. Although they can also be nouns, these request method.. 2023. 12. 5.