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

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.

主站蜘蛛池模板: 江陵县| 杭州市| 宝应县| 开化县| 故城县| 苗栗市| 金阳县| 潢川县| 江阴市| 甘德县| 晋江市| 岚皋县| 磐石市| 永顺县| 湘西| 南靖县| 宜黄县| 扎囊县| 都昌县| 澄城县| 邢台市| 大余县| 永登县| 万荣县| 于都县| 三门县| 琼海市| 横峰县| 恩平市| 滨州市| 兴业县| 子洲县| 巴塘县| 百色市| 湖北省| 登封市| 增城市| 武汉市| 通河县| 鄂托克前旗| 邵阳县|