重新获取favicon

This commit is contained in:
luchenqun 2017-03-09 09:44:19 +08:00
parent 50386b40fc
commit 79c24a146e
1 changed files with 59 additions and 29 deletions

View File

@ -925,37 +925,67 @@ api.getSnapFaviconByTimer = function() {
} }
}); });
// 获取favicon if (!/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/.test(url)) {
fs.exists(faviconPath, function(exists) { fs.exists(faviconPath, function(exists) {
if (exists) { if (!exists) {
if (faviconState != -1) { var sourceFile = './public/images/favicon/default.ico';
db.updateBookmarkFaviconState(id, -1); var readStream = fs.createReadStream(sourceFile);
var writeStream = fs.createWriteStream(faviconPath);
readStream.pipe(writeStream);
} }
} else { });
if (!/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/.test(url)) { db.updateBookmarkFaviconState(id, today + 31);
db.updateBookmarkFaviconState(id, today + 31); return;
return; }
} var faviconUrl = "http://g.soz.im/"+ url +"/cdn.ico"
favicon(url, function(err, faviconUrl) { if (faviconUrl) {
if (faviconUrl) { download(faviconUrl, faviconPath, function(err) {
download(faviconUrl, faviconPath, function(err) { var newFaviconState = -1;
var newFaviconState = -1; if (err) {
if (err) { console.log("boomarkid = " + id + ", download over", err)
console.log("boomarkid = " + id + ", download over", err) if (faviconState == 0 || faviconState == 1) {
if (faviconState == 0 || faviconState == 1) { newFaviconState = faviconState + 1;
newFaviconState = faviconState + 1; } else if (faviconState == 2) {
} else if (faviconState == 2) { newFaviconState = today + 31;
newFaviconState = today + 31;
}
}
db.updateBookmarkFaviconState(id, newFaviconState);
});
} else {
db.updateBookmarkFaviconState(id, today + 31);
} }
}); }
} db.updateBookmarkFaviconState(id, newFaviconState);
}); });
} else {
db.updateBookmarkFaviconState(id, today + 31);
}
// 获取favicon(由于获取不到有些图标,暂时放弃)
// fs.exists(faviconPath, function(exists) {
// if (exists) {
// if (faviconState != -1) {
// db.updateBookmarkFaviconState(id, -1);
// }
// } else {
// if (!/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/.test(url)) {
// db.updateBookmarkFaviconState(id, today + 31);
// return;
// }
// favicon(url, function(err, faviconUrl) {
// if (faviconUrl) {
// download(faviconUrl, faviconPath, function(err) {
// var newFaviconState = -1;
// if (err) {
// console.log("boomarkid = " + id + ", download over", err)
// if (faviconState == 0 || faviconState == 1) {
// newFaviconState = faviconState + 1;
// } else if (faviconState == 2) {
// newFaviconState = today + 31;
// }
// }
// db.updateBookmarkFaviconState(id, newFaviconState);
// });
// } else {
// db.updateBookmarkFaviconState(id, today + 31);
// }
// });
// }
// });
} }
}) })
.catch((err) => console.log('getBookmarkWaitSnap err', err)); .catch((err) => console.log('getBookmarkWaitSnap err', err));