일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- object
- 출처 : https://joshua1988.github.io/web-development/javascript/promise-for-beginners/
- http://jeonghwan-kim.github.io/dev/2019/06/25/react-ts.html
- https://velog.io/@velopert/create-typescript-react-component
- toString
- 출처 : https://webdir.tistory.com/506
- 게시판
Archives
- Today
- Total
Back Ground
NodeJS - RestFul [ES5] 본문
RestFul 이란
최근의 서버 프로그램은 다양한 브라우저와 안드로이폰, 아이폰과 같은 모바일 디바이스에서도 통신을 할 수 있어야 한다.
REST 아키텍처는 Hypermedia API의 기본을 충실히 지키면서 범용성을 보장한다.
예제 )
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | var http = require('http') , express = require('express') , static = require('serve-static') , bodyParser = require('body-parser') , path = require('path'); var app = express(); //body-parser를 사용하겠다는 모듈 app.use(bodyParser.urlencoded({extended: false})); app.use('/public',static(path.join(__dirname, 'public'))); var router = express.Router(); //form에 action="/rrr/login"으로 Mapping router.route('/rrr/login/:name').post(function(req,res){ console.log("미들웨어 1"); //post를 먼저 확인 후 get에서 찾는다. var pName = req.params.name; console.log(pName); var pId = req.body.id || req.query.id; var pPw = req.body.pw || req.query.pw; res.writeHead('200',{"Content-Type":"text/html; charset=utf-8"}); res.write('post 이다 : '+ '<br>'); res.write('NAME : '+pName+ '<br>'); res.write('ID : '+pId+ '<br>'); res.write('PW : '+pPw+ '<br>'); res.write('<a href="public/login2.html">로그인</a>'); res.end(); }); router.route('/').get(function(req,res){ console.log("미들웨어 1"); res.writeHead('200',{"Content-Type":"text/html; charset=utf-8"}); res.write('post 이다 : '+ '<br>'); res.write('<a href="public/login3.html">로그인</a>'); res.end(); }); app.use('/',router); //index나 에러 메세지 보낼때 기본 패스 처리 //get post 둘다 이곳에서 처리하게 한다. app.all('*',function(req,res){ res.status(400).send('페이지를 찾을수 없습니다.'); }); //put/delete는 쓰지않는다. (해킹할때 공격대상이 될수있다.) http.createServer(app).listen(3000,function(){ console.log('서버 기동'); }); | cs |
여기서 중요한건
1 | outer.route('/rrr/login/:name') | cs |
restful 방식 :name 는 req,params.name <- 변수명 으로 들어가게된다. <form action="/rrr/login/test" 의 test 라는 값을 갖게 된다.
즉, localhost:3000/rrr/login/a 라고하면
localhost:3000/rrr/login?name=a 와 같이 a라는 값의 name 파라메터 키로 들어가게 된다.
'Javascript > Node.js' 카테고리의 다른 글
Callback Hell 이란 [ 해결방법 ] (2) | 2019.01.23 |
---|---|
NodeJS - ES2015+ (0) | 2019.01.18 |
NodeJS - Router 사용해 요청 라우팅하기 [ES5] (0) | 2018.10.07 |
NodeJS - Static [ES5] (0) | 2018.10.07 |
NodeJS - Request [ES5] (0) | 2018.10.04 |
Comments