well-balanced

웹서버에 요청시 Response Type 올바르게 지정하기 본문

error

웹서버에 요청시 Response Type 올바르게 지정하기

Cosmian 2019. 12. 5. 22:34

오늘 Node.js를 통해 웹서버 통신을 하는 작업을 하려고 하는데..

혻혻혻혻이라니 너무 무섭지 않은가.

원래의 코드는 이러했다.

var http = require('http');
var fs = require('fs');
var app = http.createServer(function(request,response){
    var url = request.url;
    if(request.url == '/'){
      url = '/static/template/index.html';
    }
    if(request.url == '/favicon.ico'){
      return response.writeHead(404);
    }
    response.writeHead(200,{
        'Content-Type':'text/html; charset=utf-8'
    });
    response.end(fs.readFileSync(__dirname + url));

});
app.listen(3000);

뭔가 인코딩이 안맞는 거 같은데 라고 생각하면서 이곳에서 원인을 살펴보니, 역시나 response.writeHeader로 들어가야 할 값에 Content Type이 누락된 것을 알 수 있었다. 그래서 {'Content-Type':'text/html; charset=utf-8'}와 같은 객체를 response.wirteHeader의 두번째 인자로 값을 주니 해결되었다.

response.writeHead(200,{
        'Content-Type':'text/html; charset=utf-8'
    });

'error' 카테고리의 다른 글

AWS instance에서 요청/응답 타임존 문제  (0) 2020.01.28
Heroku Error R10 (Boot timeout)  (0) 2019.11.20
Comments