일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바
- 웹소켓연결끊김
- nvmrc
- ChatGPT
- 패키지설치에러
- 버킷생성
- java
- javascript
- Database
- class
- iam사용자
- Express
- gpt3.5turbo
- nodejs
- 호스팅영역
- 웹소켓연결
- git
- openaiapi
- aws
- chatGPTAPI
- gptapi
- 클라우드
- gitlab
- aiapi
- 노드버전
- db
- 웹소켓재시작
- GPT3.5
- Github
- 클래스
- Today
- Total
목록Backend (23)
IT's Jenna
목표 : DB에 CRUD 동작을 하는 쿼리문을 만들어 보자 1. createPool 우선 express를 활용해서 goods라는 라우팅 환경을 하나 만들었다. 여기서 mysql과 통신해서 쿼리문을 동작시키고자 한다. 이때 서버와 mysql의 연결을 위해 사용하는 것이 createPool이다. Pool은 database 연결 캐시*이다. Pool을 사용하면 다수의 connection을 관리할 수 있고, 매번 connection을 새로 만들 필요 없이 기존의 connection을 재활용할 수 있다. 캐시 : 데이터나 값을 미리 복사해둔 임시 장소. 데이터에 접근하는 시간이나 계산하는 시간이 오래 걸릴 때 시간을 절약하기 위해 미리 복사본을 만들어 둔 것 아래와 같이 config라는 폴더 내 index.js파..
Javascript는 기본적으로 비동기 (Non-Blocking) 프로그래밍이다. 비동기 시스템이란, 동작이 스크립트가 작성된 순서대로 진행되는 것이 아니라 결과값이 먼저 나오는 순서대로 진행되는 것이다. 비동기 시스템은 주로 퍼포먼스가 극대화되어야 하는 웹/앱에서 많이 사용된다. 1. Non-Blocking fs.readFile('./file.md', (err, data) => { if (err) throw err; console.log('non blocking data : ',data); }); console.log('wow') //result //wow //non blocking data : 스크립트가 작성된 절차대로 수행된다면 데이터가 먼저 출력되고 wow가 출력되겠지만, 비동기 방식은 그렇지 않..
Injection attack이란? 외부에서 서버에 쿼리문을 보내, 데이터 베이스를 추출하거나 임의로 조작하는 행위 Injection attact 사례 router.get('/', function(req, res, next) { console.log('query : ', req.query) let {idx, name} = req.query console.log('idx : ', idx, 'name :', name 'idx type : ', typeof idx) // idx : 1 name : asdf idx type : string let sql sql = 'SELECT * FROM Goods WHERE idx = "'+idx+'"' pool.query(sql, function(error, results..
Express에서 라우팅 하기 라우팅이란 Url로 전달받은 path의 경로에 따라 클라이언트에 응답하는 정보를 달리 하는 것이다. 이전 포스팅에서 Express 구조를 설명할 때, routes 폴더 안에 서버에 필요한 데이터 저장 및 동작을 설정할 수 있다고 했다. routes/users.js의 구조 Express 모듈 require 한다. Express 모듈 중 routing에 필요한 함수들의 모음인 Router()를 router라고 명명한다. router.method(‘method 적용 경로’ , 미들웨어 함수) : method가 실행되면 라우팅 경로에 미들웨어 함수가 동작한다. router에 설정한 모듈들을 외부에서 사용할 수 있도록 export 한다. users.js 파일에서 설정한 모듈들을 모두..
Express 환경을 사용할 때 반드시 알아야 하는 개념이 미들웨어 함수이다. 이전 포스팅에서 언급한 Express에 대한 개념을 미들웨어를 중심으로 다시 설명하면 아래와 같다. Express : 자체적으로 최소한의 기능을 가지고 있는 라우팅 및 미들웨어 웹 프레임워크, Express의 app.js은 일련의 미들웨어 함수 호출로 구성되어 있다. Express의 app.js 내부에 보면 express에 필요한 모듈들을 모두 require로 불러와서 express라는 변수에 넣어준다. Express 모듈에는 router, json 등 웹 앱을 구성하는데 필요한 method들이 모여있다. express()는 express모듈에서 export 된 최상위 함수이다. var express = require('exp..
Express 환경이란? NodeJS 기반 웹 어플리케이션 프레임워크 웹 어플리케이션을 제작하는데 필요한 초기 세팅이 되어있다 프레임워크 : 어플리케이션을 만들 수 있는 기본적인 설계 틀, 프레임워크 제작자가 만들어둔 기반 코드를 바탕으로 사용자(프로그래머)들이 그 형식에 맞춰서 코드를 확장해갈 수 있다. 라이브러리와 비교해서 라이브러리는 단순한 함수의 모음집이라고 볼 수 있는 반면에, 프레임워크는 함수와 동시에 개발을 위한 구조까지 미리 잡아둔 것이다. Express 구조 Bin : http모듈과 express모듈을 연결하고, 포트를 설정해주는 부분 Public : 화면 스타일, 이미지, 스크립트 등 필요한 정적 파일들을 저장해두는 장소 Views : 웹페이지 화면을 만들어 주는 장소. EJS 템플릿 ..