728x90 반응형 전체 글104 [7-1] 사용자 인증을 위한 passportjs Passport는 Node.js 애플리케이션에서 사용자 인증을 간편하게 처리할 수 있도록 도와주는 미들웨어다. Express 프레임워크와 함께 사용되며, 다양한 전략(Strategy)을 제공하여 로컬 인증, OAuth, OpenID 등을 구현할 수 있다. https://www.passportjs.org/tutorials/password/verify/ / Strategy Passport는 다양한 인증 전략을 제공한다. 각 전략은 특정한 인증 프로토콜을 구현하고 있다. 주로 사용되는 전략은 로컬전략(Local Strategy), OAuth, OpenID 등이 있다. 인증 프로토콜에 따라 사용자 인증을 처리하고 성공시에 사용자 정보를 제공한다. 로컬 전략의 경우 아이디와 비밀번호를 이용하여 인증을 수행한다. .. 2023. 12. 8. 무료로 https SSL/TLS 인증서를 발급받을 수 있는 인증 기관 Let's Encrypt https://letsencrypt.org/ Let's Encrypt는 가장 널리 알려진 무료 SSL/TLS 인증 기관 중 하나다. Certbot과 같은 도구를 사용하여 쉽게 SSL/TLS 인증서를 발급받을 수 있다. ZeroSSL https://zerossl.com/ ZeroSSL은 무료 SSL/TLS 인증서를 제공하는 또 다른 서비스다. 간단한 웹 기반 인터페이스를 통해 SSL/TLS 인증서를 생성하고 다운로드할 수 있다. 특히 Let's Encrypt을 사용할 수 없는 환경에서도 유용하게 사용될 수 있다. SSL For Free https://www.sslforfree.com/ SSL For Free도 간단한 웹 기반 인터페이스를 제공하여 무료 SSL/TLS 인증서를 발급받.. 2023. 12. 6. [7-2] http의 취약점인 보안 강화를 위한 https HTTPS(SSL/TLS)는 HyperText Transfer Protocol Secure의 약자로, 웹 통신을 보안하기 위한 프로토콜이다. Express에서 HTTPS를 사용하는 것은 애플리케이션의 통신을 암호화하고 보안을 강화하기 위함이다. HTTP vs. HTTPS HTTP (HyperText Transfer Protocol) HTTP는 텍스트 데이터를 주고받는 프로토콜로, 데이터가 암호화되지 않는다. 따라서 민감한 정보를 전송할 때는 보안이 취약하다. HTTPS (HyperText Transfer Protocol Secure) HTTPS는 HTTP에 보안 기능을 추가한 프로토콜이다. 데이터는 암호화되어 전송되기 때문에 중간자 공격을 방지하고 데이터의 안전성을 보장한다. / 보안 Express로 H.. 2023. 12. 6. 일급 객체(first-class object)의 세 가지 조건 자바 스크립트에서 함수는 일급 객체로 취급되므로 세 가지 조건을 만족한다. 이것은 함수를 변수에 할당하고, 다른 함수의 인자로 전달하며 함수의 반환 값으로 사용할 수 있다는 의미이다. 1) 변수에 할당(Assignable) 함수는 변수에 할당할 수 있다. 함수를 다른 변수나 상수에 저장할 수 있다. const greet = function(name) { return `Hello, ${name}!`; }; const myFunction = greet; console.log(myFunction('John')); // 출력: Hello, John! 2) 객체의 인자로 전달 (Pass as an argument) 함수는 다른 함수에 매개변수로 전달할 수 있다. 함수를 인자로 받는 고차 함수를 만들거나 콜백함수로.. 2023. 12. 2. JavaScript 콜백함수 콜백 유형 콜백 함수 (callback function)는 다른 함수의 매개변수로 전달되어 특정 시점이나 조건에 따라 실행되는 함수다. 콜백 함수는 비동기적인 작업, 이벤트 처리, 타이머 설정 등에 사용되고 자바스크립트에서 함수는 일급객체이기 때문에 다른 함수에 전달 될 수 있다. function mainFunction(callback) { // 어떤 작업 수행 // 콜백 함수 호출 callback(); } function callbackFunction() { console.log('콜백 함수가 호출되었습니다.'); } // mainFunction 호출 시 callbackFunction이 콜백으로 전달됨 mainFunction(callbackFunction); 1) 동기적 콜백 함수가 즉시 실행되는 경우로 호출한 .. 2023. 12. 1. 화살표 함수의 특징과 사용을 피해야 할 때 화살표 함수(arrow function)는 ES6(ECMAScript 2015)에서 도입된 새로운 함수 표현식이다. 기존의 함수 선언문과 함수 표현식에 비해 간결하고 몇 가지 특징이 있다. const add = (a, b) => { return a + b; }; 특징 1) 간결한 문법 화살표 함수는 함수 표현식을 간결하게 작성할 수 있도록 한다. 함수가 간단한 경우 중괄호와 return 키워드를 생략할 수 있다. // 일반 함수 표현식 const multiply = function(a, b) { return a * b; }; // 화살표 함수 const multiplyArrow = (a, b) => a * b; 2) this 바인딩 화살표 함수는 자신만의 'this'를 생성하지 않고 외부 스코프의 'th.. 2023. 12. 1. 비동기 처리를 위한 Promise Promise는 JavaScript에서 비동기 처리를 다루기 위한 객체다. 비동기 작업이 완료되었거나 실패했을 때의 결과 값을 나타내는데 사용된다. Promise는 비동기 코드를 좀 더 효율적으로 다룰 수 있게 하며, 콜백 헬(callback hell)을 피할 수 있도록 도와준다. Promise는 일반적으로 세 가지 상태를 가지고 있다 1) Pending (대기): 비동기 작업이 완료되지 않은 상태. 초기 상태다. 2) Fulfilled (이행): 비동기 작업이 성공적으로 완료된 상태. 결과 값이 존재한다. 3) Rejected (거부): 비동기 작업이 실패한 상태. 실패 이유가 존재한다. const myPromise = new Promise((resolve, reject) => { // 비동기 작업 수.. 2023. 11. 25. JavaScript에서의 비동기 처리 - async/await async와 await는 JavaScript에서 비동기 코드를 더 쉽게 다룰 수 있게 해주는 키워드다. 주로 Promise 기반의 비동기 작업을 보다 간결하고 동기적으로 보이게 작성할 수 있도록 도와준다. async와 await는 ECMAScript 2017(ES8)에서 도입되었다. 1. async async 함수는 비동기 작업을 수행하는 함수를 선언할 때 사용되며, 항상 Promise를 반환한다. 이 함수가 호출되면, 그 결과로 해결되는 Promise 객체를 얻게 된다. async function fetchData() { return 'Data Fetched!'; } fetchData().then(data => { console.log(data); // 출력: Data Fetched! }); 2. aw.. 2023. 11. 25. Javascript 배열 순회 forEach 메서드 forEach 메서드는 배열의 각 요소에 대해 주어진 콜백 함수를 한 번씩 실행하는 메서드로 새로운 배열을 반환하지 않고, 기존 배열을 변경하지도 않는다. array.forEach(callback(currentValue, index, array)); callback : 각 요소에 대해 실행할 함수로, 세 개의 인자를 받는다. currentValue : 현재 배열의 요소. index : 현재 배열의 인덱스. array : 메서드가 호출된 배열. const numbers = [1, 2, 3, 4, 5]; // 각 요소 출력 numbers.forEach((num, index) => { console.log(`Index ${index}: ${num}`); }); // 출력: // Index 0: 1 // Ind.. 2023. 11. 21. Javascript에서 배열을 필터링하는 filter메서드 filter 메서드는 배열의 각 요소를 평가하여 조건을 만족하는 요소들로 이루어진 새로운 배열을 반환하는 메서드이다. 주어진 조건에 따라 배열을 필터링하므로, 데이터의 조건부 추출이나 변형에 자주 활용된다. const newArray = array.filter(callback(currentValue, index, array)); callback : 각 요소에 대해 실행할 함수로, 참/거짓을 반환하는 조건을 포함한다. currentValue : 현재 배열의 요소. index : 현재 배열의 인덱스. array : 메서드가 호출된 배열. const numbers = [1, 2, 3, 4, 5]; // 짝수만 필터링 const evenNumbers = numbers.filter((num) => num % 2 .. 2023. 11. 21. 이전 1 ··· 4 5 6 7 8 9 10 11 다음 728x90 반응형