Node JS Web Express framwork 2
Node Express 정적 서비스 사용
사진, 동영상과 같이 정적 서비스를 가져오는 Node Express 사용법
우선 정적 파일들을 보관하는 디렉토리를 생성하여준다.
public 디렉토리에 images라는 폴더안에 hello.jpg라는 이미지가 있고 나는 해당 이미지를 웹 화면에 출력을 하려한다.
Express의 내장함수를 사용하여 이미지 경로에 접근하여 사용 할 수있다.
- main.js
//express 정적 서비스를 가져오는 내장함수 [express.static(접근경로)]
app.use(express.static('public'));
위와 같이 최초 디렉토리만 경로를 잡아주면 된다.
이제 내가 이미지를 넣고 싶은 웹 페이지에 이미지를 넣어주면 된다.
- topic.js
exports.home = function (request, response) {
db.query(`SELECT *FROM topic`, function (error, topics) {
var title = "Welcome";
var description = "Hello Node.js";
var list = template.list(topics);
var html = template.html(
title,
list,
`<h2>${title}</h2>${description}
<img src="/images/hello.jpg" width="300px" style="display:block; margin-top:10px">`,
`<a href="/create">create</a>`
);
response.send(html);
});
};
<img src="/images/hello.jpg" width="300px" style="display:block; margin-top:10px">
의 src의 경로에서 images/hello.jpg만 잡아준 이유는 아까 public 디렉토리는 express가 잡아줬기 때문에 이미지가 출력되는것을 알수 있다.