官术网_书友最值得收藏!

Handling favicon requests

When visiting a URL via a browser, you will often notice a little icon in the browser tab or in the browser's address bar. This icon is an image named favicon.ico, and it is fetched on each request. As such, an HTTP GET request normally combines two requests—one for the favicon, and another for the requested resource.

Node developers are often surprised by this doubled request. Any implementation of an HTTP server must deal with favicon requests. To do so, the server must check the request type and handle it accordingly. The following example demonstrates one method of doing so:

const http = require('http');
http.createServer((request, response) => {
if(request.url === '/favicon.ico') {
response.writeHead(200, {
'Content-Type': 'image/x-icon'
});
return response.end();
}
response.writeHead(200, {
'Content-Type': 'text/plain'
});
response.write('Some requested resource');
response.end();

}).listen(8080);

This code will simply send an empty image stream for the favicon. If there is a favicon to send, you would simply push that data through the response stream, as we've discussed previously.

主站蜘蛛池模板: 石棉县| 三河市| 措美县| 西青区| 汝州市| 潼南县| 定兴县| 开封市| 宜兴市| 泰州市| 枣强县| 太白县| 桑植县| 泗阳县| 陵川县| 赣榆县| 乌拉特前旗| 株洲县| 通化县| 临城县| 溆浦县| 长治县| 云龙县| 临沭县| 昭通市| 夏津县| 德江县| 体育| 仁布县| 花莲县| 大渡口区| 呼图壁县| 夏津县| 渝中区| 凌海市| 凤凰县| 永仁县| 麟游县| 纳雍县| 连平县| 武定县|