본문 바로가기

> 개발/Node.js & Express4

[Express] Express로 CRUD 구현하기 with MySQL & typeORM 오늘은 Express로 CRUD를 구현해보았따!! 데이터베이스는 MySQL을 사용했고, ORM은 typeORM을 사용했다. sequelize가 아닌 typeORM을 사용한 이유는, typeORM은 SQL 문법을 사용하기 때문에 SQL 작성 연습을 위해 typeORM을 선택했다. sequelize는 자바스크립트로 코드를 작성하면 알아서 SQL 구문으로 변경해준다. 나중에 SQL 작성이 익숙해지면 그땐 sequelize를 써보고 싶다. 기본 설정 const express = require("express"); const app = express(); const cors = require("cors"); const dotenv = require("dotenv"); dotenv.config(); const { .. 2023. 8. 3.
'Client does not support authentication protocol requested by server; consider upgrading MySQL client' 에러 Node.js와 MySQL을 연동하던 중에 문제가 발생했다. 에러 메세지 code: 'ER_NOT_SUPPORTED_AUTH_MODE', errno: 1251, sqlMessage: 'Client does not support authentication protocol requested by server; consider upgrading MySQL client', sqlState: '08004', fatal: true 해결방법 mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '비밀번호입력'; mysql을 실행한 뒤 ALTER로 인증 플러그인을 변경해주면 된다. 이때 'Your password d.. 2023. 8. 3.
Node.js 요청 데이터 보내기, request.on()과 response.end() 목표 1. Node.js만 사용하기 - Express 사용 X 2. httpie를 사용해서 서버와 통신하기 3. CRUD 기능 구현하기 필요 데이터 User Posting id PK postingId PK name userId FK email title password content date API 명세서 매서드 url 매서드 url 유저 정보 전체 보기 GET /user 포스팅 전체 보기 GET /post 유저 정보 추가 POST /user/register 포스팅 작성 POST /post/write 유저 정보 수정 PATCH /user/update/{id} 포스팅 수정 PATCH /user/update/{id} 유저 정보 삭제 DELETE /user/delete/{id} 포스팅 삭제 DELETE /us.. 2023. 7. 30.
[Node.js]Node.js의 fs모듈로 디렉토리와 파일 추가 함수 만들기 내 단짝 친구와 TIL 을 공유하는 스터디를 하고 있다. 친구는 자동화와 효율에 관심이 많아서 셸 스크립트로 TIL 파일을 자동으로 추가하도록 구현했다고 했다. 내가 아는 것은 js와 리액트뿐이었기 때문에 나는 어떻게 파일을 추가할 수 있을까 고민하다가 node.js의 fs모듈을 활용하기로 했다. 구현 목표 1. 새로운 주가 시작되었을 때 2023-06-둘째주와 같은 이름의 디렉토리 만들기 2. 디렉토리 안에 오늘 날짜의 md 파일 생성하기 fs 모듈 fs 모듈은 이름 그대로 file system과 관련된 모듈이다. 파일은 물론 디렉토리 추가/삭제/읽기와 같은 작업을 수행할 때 사용한다. 파일의 최상단에 const fs = require( "fs" ); 를 입력한 뒤 관련 매서드를 사용하면 된다. 내가 .. 2023. 6. 5.