ошибка: Не разрешено загружать локальный ресурс

Я создаю URL-адрес, динамически указывающий на локальный IP-адрес в моем классе действий.
Ниже приведен созданный URL-адрес:

<a file='#' onClick=window.open('file://154.66.111.123/SD/SPRD/index.htm','_self') >Click Here </a>

Приведенный выше URL-адрес отлично работает в IE, но в chrome я не смог получить доступ к этому URL-адресу, ниже приведено исключение, замеченное в консоли браузера:

Not allowed to load local resource:file://154.66.111.123/SD/SPRD/index.htm

Как я могу получить доступ к локальной файловой системе из Chrome? Пожалуйста, предложите. Спасибо.


person user3711336    schedule 16.07.2014    source источник
comment
Если он локальный, то почему вы вводите IP?   -  person Danilo Valente    schedule 16.07.2014
comment
извините, я имею в виду в сети, я должен указать другой IP-адрес. @DaniloValente   -  person user3711336    schedule 16.07.2014
comment
Пожалуйста, уточните... Вы пытаетесь загрузить сетевую папку через путь UNC? Как если бы вы вводили \\154.66.111.123\SD\SPRD\index.htm на компьютере с Windows?   -  person Álvaro González    schedule 16.07.2014
comment
Нет, я получаю этот URL-адрес из базы данных, и если пользователи хотят перейти по этому пути, им нужно щелкнуть ссылку, чтобы пользователи были перенаправлены на этот путь. Получил URL-адрес из базы данных и создал ‹a file='#' onClick=window.open в моем классе действий вместе с URL-адресом. @ Альваро Г. Викарио.   -  person user3711336    schedule 16.07.2014
comment
Но... вы не можете читать произвольные файлы на произвольных компьютерах, просто составив путь. Вам нужен сетевой протокол, реально реализующий передачу :-?   -  person Álvaro González    schedule 16.07.2014


Ответы (2)


Вы не можете получить доступ к такому файлу из соображений безопасности. Но вы можете получить доступ к файлу, не загружая его с помощью javascript. один из способов сделать это — использовать поле ввода файла.

  1. Добавить поле ввода файла на страницу
  2. Добавить прослушиватель событий onchange на вход
  3. Получить файл
  4. Создайте URL-адрес, используя функцию URL.createObjectURL

пример кода

let input = document.querySelector("#input");

input.addEventListener("change", (e)=>{
        let file = input.files[0];
        let url = URL.createObjectURL(file); // A valid URL that you can use on the page

      })
person Mohamed Abdallah    schedule 01.02.2020

file:// работают только на вашем компьютере.

Это безопасность.

person A-312    schedule 16.07.2014
comment
это должен быть способ заставить хром работать с ним, поскольку IE поддерживает это. @Хорс Суджет - person user3711336; 16.07.2014
comment
Попробуйте: file://///154.66.111.123/, но браузеры имеют разный уровень безопасности (попробуйте перетащить файл в свой браузер). - person A-312; 16.07.2014
comment
Я пробовал, это не работает, та же ошибка отображается в консоли браузера: Не разрешено загружать локальный ресурс: файл://154.66.111.123/SD/SPRD/index.htm. @Хорс Суджет - person user3711336; 16.07.2014
comment
Не разрешено загружать локальный ресурс — это предупреждение системы безопасности. - person A-312; 16.07.2014