nodejs56 [Nodejs-express] req.params [생활코딩] 상세보기 페이지 구현 Route parameters - Route path: /users/:userId/books/:bookId --- route path를 지정 - Request URL: http://localhost:3000/users/34/books/8989 --- 사용자가 해당 url로 접속하면 - req.params: { "userId": "34", "bookId": "8989" } --- req.params의 객체에 해당 형식으로 값이 들어옴 app.get('/page/:pageId/:chapterId', function(req, res){ res.send(req.params); }); localhost:3000/page/aaa/bbb로 접속 [결과] {"pageId":"aaa",.. 2020. 8. 7. [Nodejs-express] app.get() [생활코딩] 홈페이지 구현 Node.js로만 된 코드var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.parse(_url, true).query; var pathname = url.parse(_url, true).pathname; if(pathname === '/'){ if(queryData.id === undefined){ fs.readdir('./data', function(error, filelist){ var title = 'Welcome'; var description = 'Hello, Node.js'; var list = template.list(filelist); .. 2020. 8. 7. [Nodejs-express] 설치하기 [생활코딩] Hello world Express 설치 Terminal - 작업할 파일과 nodejs를 설치한 후 npm install express --save main.js const express = require('express'); // 모듈 express를 가져와 다른 값으로 바뀌지 않도록 const(상수)로 설정 const app = express(); // express를 함수로 호출하고 리턴된 값을 app에 담음 // app(express())는 다양한 메소드를 가지고 있음 app.get('/', (req, res) => res.send('Hello world')); app.listen(3000, () => console.log('Example app listening on port 300.. 2020. 8. 7. [Nodejs-express] Nodejs 웹 프레임워크 Express? [생활코딩] Node.js - Express Node.js 기능만으로 웹 애플리케이션을 만들기엔 세련되지 못하고 불편함 그래서 개발자들은 Node.js에서 동작하는 웹 프레임워크를 만듦 웹 프레임워크 - 반복적인 일들이 있음 ex. url에 파라미터를 받아 처리, 정적일 파일을 읽어서 출력하기, 로그인 기능, 보안적인 이슈 해결 - 반복적인 일을 적은 코드로 안전하게 처리하게 도와주는 것이 프레임워크 - 프레임워크는 사용하기 편리하지만 공부하는데 시간과 노력이 필요 - Express는 Node.js의 대표적임 웹 프레임워크 2020. 8. 7. [Nodejs-mysql] 보안의 중요성 [생활코딩] 보안 - SQL Injection 왜 보안이 필요한가? - 외부로부터 들어오는 정보가 오염됐을 경우를 대비해야함 (오염될 수 있는 정보 : 접근한 url, 등록된 글, 파일 업로드) 외부로부터 SQL 쿼리문이 등록되는 경우 - 데이터베이스에서 ;를 입력하는 이유는 한 번에 여러개의 쿼리문을 실행하기 위함 - SELECT * FROM topic; DROP TABLE topic; 입력하면 두개의 쿼리문 실행 [Ex] - 사용자가 localcast:3000/?id=1 접속시 - SELECT*FROM topic JOIN LEFT author ON topic.author_id=author_id WHERE topic.id='1' 이 실행됨 - 사용자가 localcast:3000/?id=1;DROP TA.. 2020. 8. 7. [Nodejs-mysql] 테이블값 삭제하기 [생활코딩] 저자 삭제 기능 구현 테이블값 삭제하기 lib/template.js uthorTable:function(authors){ var tag = ''; var i = 0; while(i < authors.length){ tag += ` ${authors[i].name} ${authors[i].profile} update `; // delete는 링크가 아닌 form으로 만들어야 함 // delete는 클릭 시 /author/delete_process 이동하고 id값으로 authors[i].id 전달 i++; }; tag += ''; return tag; } lib/author.js exports.delete_process = function(request, response){ var body = .. 2020. 8. 7. 이전 1 2 3 4 5 6 7 ··· 10 다음 반응형