Web/javascript 12

Node.js 회원가입, 로그인 적용시키기

auth.js 파일을 추가하여 로그인, 회원가입(회원정보 확인, 아이디를 보내면 해당 객체의 정보만 출력)을 적용해 보기 서버를 실행시킬 파일더보기import express from "express";import morgan from "morgan";import tweetsRouter from "./router/tweets.js";import authRouter from "./router/auth.js";const app = express();app.use(express.json());app.use(morgan("dev"));app.use("/tweets", tweetsRouter);app.use("/auth", authRouter);app.use((req, res, next) => { res.send..

Web/javascript 2024.05.07

Node.js 리팩토링, validator

리팩토링- 소프트웨어 개발 과정에서 코드를 재구성하여 가독성을 높이고 유지보수를 쉽게 만드는 과정이다.- 코드의 구조를 개선하고 중복을 제거하여 더 나은 설계 패턴을 도입함으로 코드의 품질을 향상시킨다.- 코드의 기능을 변경하지 않으면서 코드를 개선하는 방법이다. 서버를 실행시킬 파일더보기import express from "express";import morgan from "morgan";import tweetsRouter from "./router/tweets.js";const app = express();app.use(express.json());app.use(morgan("dev"));app.use("/tweets", tweetsRouter);app.use((req, res, next) => { ..

Web/javascript 2024.05.07

Node.js Twitter 만들기

준비- 프로젝트를 위한 폴더를 하나 만들어준다.- 내부 세팅을 해 준다.package.json 파일을 만들어준다. >> npm init -ynodemon을 설치해준다. >> npm i nodemonexpress를 설치해준다. >> npm i expressmorgan을 설치해준다. >> npm i morgan모두 설치한 후 package.json파일에서 "type": "module"을 설정해 줘야 한다. 서버를 실행시킬 기준 파일더보기import express from "express";import morgan from "morgan";import tweetsRouter from "./router/tweets.js";const app = express();app.use(express.json());app...

Web/javascript 2024.05.07

Node.js get, post, error, route, routing

GET- 서버로부터 리스소를 요청할 때 사용된다. 주로 정보를 요청하고 서버에서 응답을 받아 클라이언트에게 보여줄 때 사용된다. 읽기? 느낌이다.POST- 서버에 데이터를 전달할 때 사용된다. 주로 사용자가 폼을 제출하거나 서버에 새로운 리소스를 만들 때 사용된다. 더보기import bodyParser from 'body-parser';import express from 'express';// npm i body-parserconst app = express();app.use(bodyParser.urlencoded({extended: true}));app.get('/', (req, res) => { res.send('로그인아이디: 비밀번호: 로그인')});// localhost:8080/posts..

Web/javascript 2024.04.29

Node.js http, ejs, rest, express

http 모듈- 웹 서버와 클라이언트를 만들고 관리하는 데 사용되는 핵심 모듈이다.- HTTP 서버를 만들거나 HTTP 클라이언트 요청을 만들 수 있다.더보기const http = require('http');const fs = require('fs');const { inherits } = require('util');const server = http.createServer((req, res) => { console.log('서버가 동작중입니다.'); console.log(req.headers); console.log(req.method); console.log(req.url); const url = req.url; res.setHeader('Content-Type', ..

Web/javascript 2024.04.29

Node.js buffer, stream, pipe

버퍼(buffer)- 메모리에 저장되는 일부의 공간이다.- 바이트 단위로 저장되며 integer 형태의 배열이다.더보기const buf = Buffer.from('Hi');console.log(buf);console.log(buf.length);console.log(buf[0]);console.log(buf[1]);console.log(buf.toString());const buf2 = Buffer.alloc(2);buf2[0] = 72;buf2[1] = 105;console.log(buf2.toString());// nodejs 를 메모리 버퍼에 문자열 사이즈 만큼 메모리를 할당하고 문자를 저장const buf3 = Buffer.from('nodejs');console.log(buf3[0]);conso..

Web/javascript 2024.04.25

Node.js (비)동기, Promise, JSON, fetch, module, import... 등

동기, 비동기 더보기// 동기function func1(){ for(let i=0; i { console.log('2번 문장 실행'); }, 3000) console.log('3번 문장 실행');}timeout();  동기식 프로그램은 순차적으로 실행이 된다. 위 코드에서 보면 func3() -> func2() -> func1() 순으로 쌓이고 다시 func1() -> func2() -> func3() 순으로 나오게 된다.비동기식 프로그램은 동시다발적으로 실행이 된다. 결과를 보면 1 -> 3 -> 2 순으로 값이 나온 것을 볼 수 있다. 동기식과 비동기식의 차이는 순차적이냐 아니면 동시다발적인 것이다. 프로미스(Promise)- ..

Web/javascript 2024.04.23

Node.js 이터레이터, 이터러블, 스프레드 연산자

Node.js- Node.js는 JavaScript 런타임 환경으로 서버 애플리케이션을 개발하는데 주로 사용된다.function더보기function sum(num1, num2){ console.log('sum() 호출!'); return num1 + num2;}const result = sum(10, 20);console.log(result);console.log('-----------------');// 함수의 메모리 주소 전달하는 방법 const add = sum;console.log(sum(10, 30));console.log(add(10, 30));console.log('-----------------');// 함수의 작성팁// 조건식이 있을..

Web/javascript 2024.04.23

JavaScript 정규표현식, 이벤트

정규표현식 - 문자열에서 특정 문자 조합을 찾기 위한 패턴이다. # 정규 표현식 표기방법 / 정규 표현식 패턴/ # test() 정규표현식에 대입한 문자열이 패턴에 적합하면 true, 적합하지 않으면 false를 리턴한다. - 정규표현식을 사용해서 회원가입 페이지를 만들어보기. 완성코드 더보기 HTML 파일 코드 회원가입 아이디: 비밀번호: 비밀번호 확인: 이름: 휴대폰번호: 이메일: 성별: 남자여자 주민등록번호: - 주민등록번호 검증 우편번호 우편번호 찾기 주소: 상세주소: 참고항목: 가입완료 다시작성 JavaScipt 파일 코드 isSsnCheck = false; window.onload = function(){ const ssn1 = document.getElementById('ssn1'); ssn..

Web/javascript 2024.04.22