Niezawodne pobieranie faviconów w rozszerzeniach Chrome, chrome: // favicon?
Używamchrome://favicon/
w moimRozszerzenie Google Chrome uzyskać favicon dla kanałów RSS. Robię to, aby uzyskać ścieżkę bazową połączonej strony i dołączyć ją dochrome://favicon/http://<domainpath>
.
To działa naprawdę niewiarygodnie. Dużo czasu zgłasza standardową ikonę „no-favicon”, nawet jeśli strona naprawdę ma favicon. Istnieje prawie 0 dokumentacji dotyczącejchrome://favicon
mechanizm, więc trudno zrozumieć, jak to działa. Czy to tylko pamięć podręczna linków, które zostały odwiedzone? Czy można wykryć, czy była ikona, czy nie?
Z prostych testów wynika, że jest to pamięć podręczna dla stron, które odwiedziłeś. Jeśli więc subskrybuję kanał RSS dribbble.com, nie wyświetli się favicon na moim rozszerzeniu. Potem, jeśli odwiedzęchrome://favicon/http://dribbble.com/
nie zwróci właściwej ikony. Następnie otwieram dribbble.com na innej karcie, pokazuje jej ikonę na karcie, a następnie po ponownym załadowaniuchrome://favicon/http://dribbble.com/
-tab, zwróci poprawną favicon. Następnie otwieram okno podręczne rozszerzeń i nadal wyświetla standardową ikonę. Ale jeśli ponownie uruchomię Chrome, wszędzie dostanie poprawną ikonę.
Teraz to tylko niektóre podstawowe badania i nie przybliżają mnie do rozwiązania. Więc moje pytanie brzmi: czy jestchrome://favicon/
poprawny przypadek użycia tego, co robię. Czy jest na to jakaś dokumentacja? A co to za zamierzone zachowanie?