전체 글 105

내일배움캠프 5주차 수요일 TIL

// (?=.*\d) : 최소한 1개 이상의 숫자가 포함되어야 합니다// [a-z0-9]+ : 소문자와 숫자로만 이루어져야 합니다// ^와 $ : 문자열의 시작과 끝을 의미합니다.const idForm = /^(?=.*[a-z])(?=.*\d)[a-z0-9]+$/;해당 코드로 수정하여 영어(소문자) + 숫자 가 포함된 형식으로 아이디를 생성하도록 적용하였다. // 로그인 APIimport express from "express";import { prisma } from "../utils/prisma/index.js";import bcrypt from "bcrypt";import jwt from "jsonwebtoken";const router = express.Router();router.post("/s..

TIL 2024.11.27

내일배움캠프 5주차 화요일 TIL

금일 작업 중 회원가입 API를 작성하고, 서버를 연후 인섬니아에서 입력값을 제대로 받는지 테스트하였다.{ "email" : "dbeodnjs1001@naver.com", "password" : "sfzeho2gy", "name" : "유대원", "age" : 26, "gender": "male"}해당 내용을 인섬니아 바디에 넣고 포스트하였을 때, 서버가 꺼지면서 DATABASE_URL을 제대로 읽어오지 못한다는 오류메시지가 표시되었다. env 파일에  DATABASE_URL은 양식대로 잘 적었고, DB와의 연결도 문제 없었기 때문에 튜터님의 도움을 받아 진행하였다.피드백 결과는 DATABASE_URL을 담고있는 파일이 app.js이 있는 s..

TIL 2024.11.26

내일배움캠프 5주차 월요일 TIL

쿠키?브라우저가 서버로부터 받은 정보를 클라이언트측에 저장하는 방식내가 브라우저 방문 시 쿠키를 저장한 후, 이후 방문 때 마다 브라우저는 해당 쿠키도 요청과 함께 서버로 보낸다.서버가 정한 기간에 따라 유효기간 존재한다인증뿐만 아니라 다양한 정보를 담을 수 있다.세션?서버에서 관리되는 사용자 정보를 저장하는 방식.사용자가 로그인할 때 세션 ID가 생성되고, 이 ID를 통해 사용자를 식별한다. 세션은 서버의 세션 DB에 모든 정보를 저장해야 하므로, 사용자 수가 많아질수록 데이터베이스의 부담이 커진다.서버로 가는 모든 요청은 이전 요청과 독립적으로 처리된다.요청이 끝나면 서버는 사용자의 정보를 잊어버린다. > 매 요청 시마다 사용자가 누구인지 서버에 알려줘야 한다.세션을 통한 사용자 인증 과정:사용자가 ..

TIL 2024.11.25

내일배움캠프 4주차 WIL

이번 주에는 입문 주차 강의를 실습하며 서버 구성에 대한 기본을 학습했다. 프로젝트를 직접 진행하면서 배울 것이 많았지만, 기본적인 구조에 익숙해지는데 의의를 두고 강의 1회독에 집중했다. 새로운 언어를 배우는 듯한 느낌이 들어 이해가 어렵고, 당장 혼자서 실현해내기에는 어려움이 있었다.숙련 강의에서 사전 캠프 때 그나마 잘 진행했던 SQL 관련 강의 내용을 다시 보며 드디어 써먹는구나라는 기분이 들었다. 기초적인 사용법은 프로젝트를 진행하며 막힐 때 다시 들었던 강의와 TIL을 참고하여 잘 활용할 수 있을 것 같다. 금요일에 진행한 커리어 코칭을 통해 업계의 트렌드, 취업 시장 흐름, 게임 자체에 대한 정보에 많이 노출되어야 한다는 생각이 들었다. 남는 시간에 직접 찾아보며 익숙해져야 할 것 같다.들었..

WIL 2024.11.22

내일배움캠프 4주차 금요일 TIL

이전에 사용했던 MongoDB는 비관계형 데이터베이스(NoSQL) MySQL이 바로 관계형 데이터베이스(RDB) NoSQL - 데이터 형식이 자유롭다저장(Write)과 읽기(Read) 작업이 더욱 빠르며, 복잡한 비즈니스 로직 없이 주로 데이터 읽기와 쓰기에 중점을 둔 서버에서 주로 사용 RDB - 열, 행에 데이터를 가진 테이블이 존재욱 복잡한 비즈니스 로직과 정형화된 데이터를 체계적으로 관리할 수 있어 더욱 안전한 서버 환경을 구성하기에 좋다보안이 중요한 기관이나, 은행과 같은 안전성을 중시하는 회사 MYSQL - 가장 널리 사용되는 오픈소스 관계형 데이터베이스(RDB)데이터베이스를 관리하는 가장 대표적인 언어인 SQL(Structured Query Language)을 사용하여 데이터를 조작하고 관리..

TIL 2024.11.22

내일배움캠프 4주차 목요일 TIL

eq.body - 회원가입 및 생성 수정 조회 할때 클라이언트에서 보낸 정보를 기준으로 사용해야 할때req.params - ID가 필요할때.req.query - 정렬 할때.req.cookies - 쿠키가져올때req.get(header) - 헤더에 저장된 값을 가져오고 싶을때res.status - HTTP 상태 전달res.send - 데이터를 포함하여 Response를 전달res.json(JSON) - Json 형식으로 Response를 전달res.redirect(주소) : 리다이렉트할 주소와 함께 Response를 전달합니다.res.cookie(key,value,option) - 쿠키를 설정할 때 사용합니다.res.clearCookie(key,value,option) - 쿠키를 제거할 때 사용합니다.ba..

카테고리 없음 2024.11.21

내일배움캠프 4주차 수요일 TIL

Express.js에서 요청과 응답 객체의 역할요청 객체(req)는 클라이언트가 보낸 요청에 대한 정보응답 객체(res)는 서버가 클라이언트에게 보낼 응답을 구성하는 데 사용요청 객체는 손님이 음식점에 주문할 때 전달하는 주문서와 같고, 응답 객체는 주방에서 준비한 음식을 손님에게 전달하는 역할.Express.js에서 미들웨어의 역할미들웨어는 요청과 응답 사이에서 특정 작업을 수행하는 함수요청을 로깅하거나, 인증을 확인하거나, 요청 데이터를 파싱하는 등의 역할미들웨어는 음식점의 주방에서 요리를 준비하는 셰프셰프는 손님이 주문한 음식을 만들기 위해 여러 재료를 준비하고 조리하는 과정을 거친다const schema = Joi.object({    name: Joi.string().min(3).max(30)...

카테고리 없음 2024.11.20

내일배움캠프 4주차 화요일 TIL

Node.js 환경에서 Express 프레임워크를 사용하여 간단한 웹 서버를 설정import express from 'express'; // Express 모듈 가져오기(서버 구축)import goodsRouter from './routes/goods.js'; // goods.js 파일에서 goodsrouter를 가져온다const app = express(); // Express 함수를 호출const PORT = 3000; // 서버가 수신 대기할 포트 번호를 3000으로 설정, 포트 >> 실행할 프로그램의 주소?app.get('/', function(req, res) { res.send('Hello World123!'); }); // 루트 경로(/)에 대한 GET 요청을 처리하는 함수app.ge..

TIL 2024.11.19

서버와 클라이언트, 웹 어플리케이션 서버와 게임서버

1. 컴퓨터 세계에서의 서버와 클라이언트서버는 클라이언트 요청에 따라 정보나 서비스를 제공하는 컴퓨터 시스템을 말합니다. 클라이언트 요청에 응답하기 위해 대기하며 제공자 역할을 수행합니다.클라이언트는 네트워크를 통해 서버에 접속할 수 있는 프로그램, 장치를 말합니다. 클라이언트를 통해 서버에 서비스나 정보를 요청하고, 서버로부터 반환된 응답을 사용자에게 적절한 방식으로 표현합니다. 장치로는 태블릿, 스마트폰, 컴퓨터가 있으며, 프로그램으로는 웹 브라우저, 앱, 게임 등을 클라이언트로 볼 수 있습니다.2. 서버-클라이언트 구조서버-클라이언트 구조는 한 대의 서버에 다수의 클라이언트가 접속하여 서비스와 정보를 이용하는 방식입니다. 클라이언트는 서버에 요청을 보내고, 서버는 이에 따라 데이터를 전송합니다.서버..

카테고리 없음 2024.11.19

내일배움캠프 4주차 월요일 TIL

웹 브라우저와 통신 방식웹 브라우저인터넷에서 정보를 검색하고 표시하는 소프트웨어.정적 페이지: 내용 고정.동적 페이지: 내용 변동 가능.통신 과정URL 입력 → DNS 조회 → IP 주소 확인 → 웹 서버 요청 → 데이터 수신 → 페이지 표시.URL 구조://:/DNS웹 주소를 IP 주소로 변환.IP 주소고유 주소 (IPv4: 192.168.0.1, IPv6: 2001:0db8:...).HTTP와 HTTPSHTTP데이터 전송을 위한 프로토콜.서버와 클라이언트 간의 의사소통 규칙.HTTPSHTTP에 보안 기능 추가.데이터 암호화로 안전한 통신.HTTP 요청과 응답기본 개념요청(Request)과 응답(Response)으로 구성.동작 과정브라우저 요청 → 서버 응답 → 페이지 표시.개발자 도구F12 또는 ⌘ ..

TIL 2024.11.18