박준혁

얼굴인식 JSON파일 저장 오류 수정

1 +<!DOCTYPE html>
2 +<html>
3 +
4 +<head>
5 + <link rel='stylesheet' href='/stylesheets/style.css' />
6 + <meta charset="utf-8">
7 + <meta http-equiv="X-UA-Compatible" content="IE=edge">
8 + <meta name="viewport" content="width=device-width, initial-scale=1">
9 + <title>애인 감정 분석</title>
10 +
11 + <!-- 부트스트랩 -->
12 + <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
13 +</head>
14 +
15 +<body>
16 + <nav class="navbar navbar-inverse navbar-fixed-top">
17 + <div class="container">
18 + <div class="navbar-header">
19 + <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
20 + <span class="sr-only">Toggle navigation</span>
21 + <span class="icon-bar"></span>
22 + <span class="icon-bar"></span>
23 + <span class="icon-bar"></span>
24 + </button>
25 + <a class="navbar-brand" href="#">애인이랑 싸웠냐?</a>
26 + </div>
27 + <div id="navbar" class="navbar-collapse collapse">
28 + <!-- <form class="navbar-form navbar-right">
29 + <div class="form-group">
30 + <input type="text" placeholder="Email" class="form-control">
31 + </div>
32 + <div class="form-group">
33 + <input type="password" placeholder="Password" class="form-control">
34 + </div>
35 + <button type="submit" class="btn btn-success">Sign in</button>
36 + </form> -->
37 + </div>
38 + <!--/.navbar-collapse -->
39 + </div>
40 + </nav>
41 +
42 + <!-- Main jumbotron for a primary marketing message or call to action -->
43 + <div class="jumbotron">
44 + <div class="container">
45 + <h1>와서 애인 기분이나 알고가</h1>
46 + <p>싸운 후 애인 사진을 주면 내가 다 해결해줄게 </p>
47 + <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more &raquo;</a></p>
48 + </div>
49 + </div>
50 +
51 + <div class="container">
52 + <!-- Example row of columns -->
53 + <div class="row">
54 + <div class="col-md-4">
55 + <h2>Heading</h2>
56 + <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
57 + <p><a class="btn btn-default" href="#" role="button">View details &raquo;</a></p>
58 + </div>
59 + <div class="col-md-4">
60 + <h2>Heading</h2>
61 + <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p>
62 + <p><a class="btn btn-default" href="#" role="button">View details &raquo;</a></p>
63 + </div>
64 + <div class="col-md-4">
65 + <h2>Heading</h2>
66 + <p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
67 + <p><a class="btn btn-default" href="#" role="button">View details &raquo;</a></p>
68 + </div>
69 + </div>
70 +
71 + <hr>
72 +
73 + <footer>
74 + <p>&copy; KHU Uni OpenSource 2017-2</p>
75 + </footer>
76 + </div>
77 + <!-- /container -->
78 + <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
79 + <!-- 모든 컴파일된 플러그인을 포함합니다 (아래), 원하지 않는다면 필요한 각각의 파일을 포함하세요 -->
80 + <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
81 +</body>
82 +
83 +</html>
...\ No newline at end of file ...\ No newline at end of file
...@@ -43,15 +43,13 @@ app.post('/faceemotions', upload.single('userfile'), function (req, res) { ...@@ -43,15 +43,13 @@ app.post('/faceemotions', upload.single('userfile'), function (req, res) {
43 headers: {'X-Naver-Client-Id':client_id, 'X-Naver-Client-Secret': client_secret}}).on('response', function(response) { 43 headers: {'X-Naver-Client-Id':client_id, 'X-Naver-Client-Secret': client_secret}}).on('response', function(response) {
44 console.log(response.statusCode) // 200 44 console.log(response.statusCode) // 200
45 console.log(response.headers['content-type']) 45 console.log(response.headers['content-type'])
46 + _req.pipe(fs.createWriteStream('./json/faceInfor.json'));
46 }); 47 });
47 console.log('request.head:'+ request.head ); 48 console.log('request.head:'+ request.head );
48 - //파일로 출력 49 + //파일로 출력 응답시간 1초해야 함
49 - _req.pipe(fs.createWriteStream('./json/faceInfor.json')); 50 + res.send("<meta http-equiv='refresh' content='1;url=/answer'>");
50 -
51 }); 51 });
52 52
53 -
54 -
55 app.get('/', function(req, res){ 53 app.get('/', function(req, res){
56 fs.readFile('index.html', function(error, data){ 54 fs.readFile('index.html', function(error, data){
57 if(error){ 55 if(error){
...@@ -62,17 +60,24 @@ app.get('/', function(req, res){ ...@@ -62,17 +60,24 @@ app.get('/', function(req, res){
62 res.end(data); 60 res.end(data);
63 } 61 }
64 }) 62 })
65 - var data = fs.readFileSync('./json/faceInfor.json'); 63 +
66 - var faceInforJson = JSON.parse(data);
67 - console.log('JSON 내용: ' + faceInforJson.info.size.width);
68 }); 64 });
69 65
70 app.get('/template', function(req, res){ 66 app.get('/template', function(req, res){
71 res.render('temp'); 67 res.render('temp');
72 }); 68 });
73 69
70 +app.get('/answer', function(req, res){
71 + // //res.send(req.query.emotion);
72 + var data = fs.readFileSync('./json/faceInfor.json');
73 + var faceInforJson = JSON.parse(data);
74 + console.log('JSON 내용: ' + faceInforJson.faces[0].emotion.value);
75 + // //var emotion = faceInforJson.faces[0].emotion.value;
76 + res.send('완료');
77 + });
74 78
75 app.listen(3000, function () { 79 app.listen(3000, function () {
76 console.log('Connected 3000!'); 80 console.log('Connected 3000!');
77 }); 81 });
78 82
83 +
......
...@@ -44,7 +44,11 @@ ...@@ -44,7 +44,11 @@
44 <div class="container"> 44 <div class="container">
45 <h1>와서 애인 기분이나 알고가</h1> 45 <h1>와서 애인 기분이나 알고가</h1>
46 <p>싸운 후 애인 사진을 주면 내가 다 해결해줄게 </p> 46 <p>싸운 후 애인 사진을 주면 내가 다 해결해줄게 </p>
47 - <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more &raquo;</a></p> 47 + <!-- <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more &raquo;</a></p> -->
48 + <form action="faceemotions" method="post" enctype="multipart/form-data">
49 + <input type="file" name="userfile">
50 + <input class="btn btn-primary btn-lg" type="submit">
51 + </form>
48 </div> 52 </div>
49 </div> 53 </div>
50 54
...@@ -71,7 +75,7 @@ ...@@ -71,7 +75,7 @@
71 <hr> 75 <hr>
72 76
73 <footer> 77 <footer>
74 - <p>&copy; Company 2014</p> 78 + <p>&copy; KHU Uni OpenSource 2017-2</p>
75 </footer> 79 </footer>
76 </div> 80 </div>
77 <!-- /container --> 81 <!-- /container -->
......