Страницы: 1
При попытке прочитать файл с помощью getFileSource выдает ошибку:
Ошибка: uncaught exception: [Exception... "Component returned failure code: 0x80520015 (NS_ERROR_FILE_ACCESS_DENIED) [nsIBinaryInputStream.readBytes]" nsresult: "0x80520015 (NS_ERROR_FILE_ACCESS_DENIED)" location: "JS frame :: chrome://myext/content/myext.js :: anonymous :: line 417" data: no]
Возможно, нужно как-то разблокировать файл? В документации по этому поводу ничего не нашел.
Пусть listener по окончании загрузки вызывает getFileSource.
Да, но для этого надо как-то перехватить возвращаемый downloadFile() объект сохраненного файла.
Ммм, хорошо. Допустим, я повешу на wbp слушателя. Но как сделать, чтобы дальший код в main не выполнялся, пока файл не загрузится?
Суть такая: я скачаваю с удаленного сервера несколько файлов и сохраняю их во временной папке. Затем, мне нужно прочитать эти файлы и получить их содержимое для последующей обработки.
Проблема в том, что при выполнении метода main, файл не успевает сохраниться к моменту, когда его пытается прочитать функция getFileSource().
Можно ли, как-то, приостановить выполнение дальнейших конструкций, пока файл не будет полностью получен и сохранен?
Вот примерный скрипт:
[code]var obj = {
main : function () {
var url1 = 'http://site.ru/image1.jpg';
var url2 = 'http://site.ru/image2.jpg';
var result = true;
var file1 = null;
if (url1) {
file1 = this.downloadFile(url1, 'image1.jpg');
}
var file2 = null;
if (url2) {
file2 = this.downloadFile(url2, 'image2.jpg');
}
if (result) {
var fileData = '';
var fileName
То, что нужно. Спасибо! :)
10000 сек
Вообще-то, милисекунд.
Увы, нет. Каждая ссылка повешена кнопку тулбара. И от авторизации будет зависеть, активна кнопка или нет.
При загрузке браузера, куки проверяются при событии onload интерфейса. А вот дальше, нужно, либо отслеживать изменение кук, либо изменение открываемых страниц.
Первый вариант мне нравится больше, но вот не знаю как реализовать. А во-втором, не могу грамотно повесить обработчик события на contentWindow.
Так не работает:
getBrowser().contentWindow.addEventListener("load", function() { my_ext.init(); }, false);
Update: сделал так:
getBrowser().addEventListener('DOMContentLoaded', function() { my_ext.init(); }, false);
Делаю тулбал для одного форума, нужно отслеживать авторизацию пользователя для генерирования индивидуальных ссылок. Имхо, идеальный вариант, отслеживать изменение куков в браузере. Есть ли такое событие?
Страницы: 1