Я создаю веб-браузер, используя C # и GeckoFx 60 , и пытаюсь настроить систему загрузки.Я бы хотел, чтобы браузер загрузил любые файлы, которые нельзя просмотреть в браузере .
Я посмотрел на это решение , но это было специально для HTML иЯ не уверен, как бы я это сделал для C # или встроенного JavaScript.
Я пробовал что-то похожее на это:
selectedBrowser.AddMessageEventListener("downloadFile", (string p) => DownloadFileAsync(p));
js.EvaluateScript(@"var elements = document.getElementsByTagName('a');
for (var i = 0, len = elements.length; i < len; i++)
{
if(!elements[i].href.endsWith('.html')){
elements[i].onclick = function() {
event = new MessageEvent('downloadFile', { 'view': window, 'bubbles': false, 'cancelable': false, 'data': this.href });
document.dispatchEvent(event);
}
}", out result);
где 'js' было AutoJSContext js = new AutoJSContext(selectedBrowser.Window)
, но не всестраницы заканчиваются на .html, и поэтому этот ofc может завершиться ошибкой.
Есть ли способ определить, является ли страница файлом или ее нельзя просмотреть в браузере?