공개/Node

공개/Node

[Node.js] AWS S3에 presigned Url을 받아 업로드하기

아직 s3 버킷을 만들지 않았다면 만들고 오세요! 2023.05.22 - [AWS] - [S3] S3란? 버킷 생성 후 정책 설정하기 [S3] S3란? 버킷 생성 후 정책 설정하기 S3 (Simple Storage Service) AWS S3는 업계 최고의 확장성과 데이터 가용성 및 보안과 성능을 제공하는 온라인 오브젝트(객체) 스토리지 서비스이다. 쉽게 말하자면, 스토리지 즉 구글 드라이브 처럼 파 kimwonny.tistory.com presigned Url? 클라이언트는 서버로부터 사전 서명된 업로드 URL을 요청합니다. 서버는 이 요청을 S3로 전달합니다. S3는 새로운 사전 서명된 URL을 서버에 반환합니다. 서버는 사전 서명된 URL을 클라이언트에 반환합니다. 사용자는 컴퓨터에서 파일을 선택하..

공개/Node

[Sequelize] 참고 옵션

member라는 테이블을 만들고 데이터를 삽입하는 중 여러가지 오류가 났던 옵션들... 테이블 복수화 막기 Model 은 테이블 이름을 지정하지 않으면 시퀄라이즈는 모델의 이름을 복수화하여(Users) 사용된다고한다. freezeTableName: true, createAt 등 없애기 timestamps: false, id 컬럼 없는데 있다고 뜰 때 id 컬럼을 없앴는데도 기본적으로 들어가기 때문에 있다고 떴다🥲 member.removeAttribute('id'); module.exports = (sequelize, DataTypes) => { const member = sequelize.define('member', { m_id: DataTypes.STRING, m_pw: DataTypes.STRING..

공개/Node

[Sequelize] 쿼리 사용법

📌 시퀄라이즈(Sequelize) 쿼리 모든 데이터 조회 SELECT * FROM 테이블명; const User = require('../medels'); User.findAll({}) 데이터 하나만 조회 SELECT * FROM 테이블명 LIMIT 1; const User = require('../medels'); User.findOne({}) 원하는 컬럼만 조회 SELECT name FROM 테이블명; const User = require('../medels'); User.findAll({ attributes:['name'] }) 테이블 정렬(ORDER BY) SELECT id, name FROM 테이블명 ORDER BY age DESC; const User = require('../medels');..

공개/Node

pug와 nunjucks

📌 Pug depth 가 깊은 html 에서 부모 자식 바꾸고 이런 작업 간편함 npm i pug // app.js app.set('port', process.env.PORT || 3000); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'pug'); app.use(morgan('dev')); 순서는 미들웨어 위에 설정! index.pug 파일 생성 후 index.js 수정 // views/index.pug doctype html html head title= title body h1 hello! // routes/index.js const express = require('express'); const path = re..

공개/Node

[Node.js] 3. Router

routes 폴더 생성 후 index.js, user.js 1단계 url 분리!! index.js const express = require('express'); const path = require('path'); const router = express.Router(); // 보낼때 /users 보냈고 그 뒤 주소만 보는거 즉, users/ 이후 주소만 볼 수 있음 router.get('/', (req, res, next) =>{ res.sendFile(path.join(__dirname, '/index.html')); }) module.exports = router; users.js const express = require('express'); const router = express.Router..

공개/Node

[Node.js] 2. Express 와 미들웨어

Node.js http 웹서버 만들어주는 라이브러리 Express, Koa, Hapi, Nest 등 (http 위에 올려놓고 쓰는 플랫폼) => express 서버 짤줄압니다! 📌 Express node를 설치하면 http 라이브러리가 자동으로 설치되는데, 코드가 보기 좋지 않고, 확장성도 떨어진다. 그걸 간편하게 만든게 Express! text 보내기 // app.js const express = require('express'); const app = express(); app.set('port', process.env.PORT || 3000); // set - 전역변수로 설정(변수이름, 값) app.get('/', (req, res) => { res.send('Hello, Express'); // ..

공개/Node

[Node.js] 1. 노드와 npm

📌 노드 Node.js는 크롬 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 자바스크립트 런타임? 자바스크립트를 실행할 수 있는 환경 노드는 서버와는 다르지만, 서버를 구성할 수 있게 하는 모듈(4장에서 설명)을 제공 노드의 특징 이벤트 기반! ex) 클릭, 네트워크 요청, 타이머 등 논 블로킹 I/O 각각의 작업이 연관이 없다면, 동시에 실행하는 것이 논 블로킹 I/O 작업일 때(파일 업로드, 다운로드, 압축, 암호화 작업) ⇒ 빠름 나머지 방식은 블로킹(하나의 작업이 끝나고 다음 작업) 싱글 스레드 블로킹 블로킹이 발생하는 경우 나머지 작업은 모두 대기 ⇒ 비효율 발생 논블로킹 요청을 먼저 받고, 완료될 때 응답함 멀티스레드와 비교 새로운 요청올 때마다 새로운 스레드 생성 스레드 자체도 비용이..

잔망짱구
'공개/Node' 카테고리의 글 목록