먼저 index.html 인데 이 html 파일에서는 로그인을 위한 아이디와 pw 를 입력 받는 페이지로 구성했다

name="id" , name="passwords"

summit 버튼을 통해서 위 두개의 정보 값이 post 방식으로 서버에 넘어간다


로그인을 위한 index.html

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
<!DOCTYPE html>
 
<html>
<head>
    <meta charset="utf-8" />
    <title>로긴</title>
</head>
<body>
 
    <h1>로그인</h1>
     <br />
     <form method="post">
         <table>
             <tr>
                 <td><label>아이디</label></td>
                 <td><input type="text" name="id"></td>
             </tr>
             <tr>
                 <td><label>비번</label></td>
                 <td><input type="text" name="passwords"></td>
             </tr>
         </table>
         <td><input type="submit" value="전송" name=""></td>
     </form>
 
</body>
</html>






서버 nodejs.js 코드
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
var express = require('express');
var http = require('http');
var serveStatic = require('serve-static');      //특정 폴더의 파일들을 특정 패스로 접근할 수 있도록 열어주는 역할
var path = require('path');
 
var app = express();      //express 서버 객체
 
var bodyParser_post = require('body-parser');       //post 방식 파서
 
app.set('port'3000);
 
 
//미들웨어들 등록 시작, 아래 미들웨어들은 내부적으로 next() 가실행됨
 
//join은 __dirname : 현재 .js 파일의 path 와 public 을 합친다
//이렇게 경로를 세팅하면 public 폴더 안에 있는것을 곧바로 쓸 수 있게된다
app.use(serveStatic(path.join(__dirname, 'public')));
 
 
//post 방식 일경우 begin
//post 의 방식은 url 에 추가하는 방식이 아니고 body 라는 곳에 추가하여 전송하는 방식
app.use(bodyParser_post.urlencoded({ extended:false }));            // post 방식 세팅
app.use(bodyParser_post.json());                                     // json 사용 하는 경우의 세팅
//post 방식 일경우 end
 
 
//이건 사용자 정의형태로 미들웨어를 제작
app.use(
    function (req, res, next) {
        console.log('middle wared was called : first');
        //res.redirect('http://google.co.kr');
 
        //req 여러 정보를 얻어 올 수 있는데 그중
        //요청받은 request 정보중에서 User-Agent 정볼를 따로 분리하여 갖어올 수 있다
        var userAgent = req.header('User-Agent');
 
        //요청파라미터는 get 방식인 req.query 에 들어오게 된다
        //post 방식은 body로 들어오게된다
        //name 은 정해져있는 명칭
 
        var paramName = req.body.id || req.query.id;
        var paramNamePW = req.body.passwords || req.query.passwords;
 
        //응답 보내기
        res.send('<h3>response from server!!7!! : ' + userAgent + '[' + paramName + ' : ' + paramNamePW  + '] </h3>');
    }
);
 
 
//웹서버를 app 기반으로 생성
var appServer = http.createServer(app);
appServer.listen(app.get('port'),
    function () {
        console.log('express 웹서버 실행' + app.get('port'));
    }
);
 




위 소스에서 굵은 글씨로 id 와 pw를 얻어올 수 있다


실행 절차는 먼저 이미지의 주소로 접근한다


index.html 파일은 public 폴더 밑에 두면 된다









전송 버튼을 누른다음 클라이언트가 받게 되는 정보는 아래와 같다 [ ...... : ....... ]








반응형

+ Recent posts