이승윤

feat: 카테고리별 동영상을 나타내는 src

1 +var Youtube = require('youtube-node');
2 +var youtube = new Youtube();
3 +
4 +var express = require('express');
5 +var router = express.Router();
6 +
7 +var word = '백종원'; // 검색어 지정
8 +var limit = 10; // 출력 갯수
9 +var video = [];
10 +var test = 'test';
11 +var count = 0;
12 +youtube.setKey('AIzaSyAsKr_oWGZIBbL5tLdIl98Lf9Pzqj8jX4o'); // API 키 입력
13 +
14 +youtube.addParam('order', 'rating'); // 평점 순으로 정렬
15 +youtube.addParam('type', 'video'); // 타입 지정
16 +youtube.addParam('videoLicense', 'creativeCommon'); // 크리에이티브 커먼즈 아이템만 불러옴
17 +
18 +youtube.search(word, limit, function (err, result) {
19 + // 검색 실행
20 + if (err) {
21 + console.log(err);
22 + } // 에러일 경우 에러공지하고 빠져나감
23 +
24 + //console.log(JSON.stringify(result, null, 2)); // 받아온 전체 리스트 출력
25 +
26 + var items = result['items']; // 결과 중 items 항목만 가져옴
27 + for (var i in items) {
28 + var it = items[i];
29 + for (var j in it) {
30 + if (it[j]['title'] != null) {
31 + var title = it[j]['title'];
32 + }
33 + if (it[j]['videoId'] != null) {
34 + var video_id = it[j]['videoId'];
35 + }
36 + var urls = 'https://www.youtube.com/watch?v=' + video_id;
37 + }
38 + var item = {
39 + id: count,
40 + title: title,
41 + video_id: video_id,
42 + urls: urls,
43 + };
44 + count++;
45 + video.push(item);
46 + }
47 +});
48 +
49 +router.get('/', function (req, res) {
50 + res.render(
51 + 'home',
52 + { videos: video } // DB에서 받은 videos를 videos변수명으로 내보냄
53 + );
54 +});
55 +
56 +module.exports = router;