Кодирование Dojo с IE и SSL

попробуйте это

откройте файл build.gradle

  android {
        dexOptions {
           javaMaxHeapSize = "4g"
        }
   }
6
задан ɢʀᴜɴᴛ 25 June 2017 в 09:45
поделиться

2 ответа

Если Ваша страница загружается, файлы из non-https Firefox URL должны сказать Вам то же самое. Вместо ошибки должен быть вычеркнут символ блокировки внизу (в строке состояния). Вы уверены дело не в этом?

Если Вы видите символ, нажимаете на него и проверка, какие файлы "небезопасны".

1
ответ дан 9 December 2019 в 22:42
поделиться

После рассмотрения исходного кода JavaScript для Dijit я думал, что было вероятно, что ошибка следует из "небезопасной" ссылки на динамично сгенерированный IFRAME. Примечание там является двумя версиями файла сценария, несжатое представляет первоисточник (dijit.js.uncompressed.js), и стандарт (dijit.js) был сжат для оптимального времени трансфера.

Так как несжатая версия является самой читаемой, я опишу свое решение на основе этого. В строке № 1023 IFRAME представляется в JavaScript:

if(dojo.isIE){
    var html="<iframe src='javascript:\"\"'"
           + " style='position: absolute; left: 0px; top: 0px;"
           + "z-index: -1; filter:Alpha(Opacity=\"0\");'>";
    iframe = dojo.doc.createElement(html);
}else{...

В чем проблема? IE не знает, "безопасен" ли src для IFRAME - таким образом, я заменил его следующим:

if(dojo.isIE){
    var html="<iframe src='javascript:void(0);'"
           + " style='position: absolute; left: 0px; top: 0px;"
           + "z-index: -1; filter:Alpha(Opacity=\"0\");'>";
    iframe = dojo.doc.createElement(html);
}else{...

Это - наиболее распространенная проблема с инструментариями JavaScript и SSL в IE. Начиная с IFRAME's используются в качестве контейнеров из-за плохой поддержки наложения DIV, эта проблема чрезвычайно распространена.

Мои первые перезагрузки на 5-10 страниц прекрасны, но затем ошибка безопасности начинает открываться снова. Как это возможно? Та же страница "безопасна" для 5 перезагрузок, и затем она выбрана IE как "небезопасная" при загрузке в 6-й раз.

Как оказалось, существует также фоновое изображение, устанавливаемое в onload событии для dijit.wai (строка № 1325). Это читает что-то вроде этого;

div.style.cssText = 'border: 1px solid;'
                  + 'border-color:red green;'
                  + 'position: absolute;'
                  + 'height: 5px;'
                  + 'top: -999px;'
                  + 'background-image: url("' + dojo.moduleUrl("dojo", "resources/blank.gif") + '");';

Это не будет работать, потому что тег фонового изображения не включает HTTPS. Несмотря на то, что местоположение относительно, IE7 не знает, безопасно ли это, таким образом, предупреждение изложено.

В этом конкретном экземпляре этот CSS используется для тестирования на Доступность (A11y) в Dojo. Так как это не что-то, что мое приложение будет поддерживать и так как существуют другие общие ошибочные проблемы с этим методом, я решил удалить все в onload () для dijit.wai.

Все хорошо! Никакие спорадические проблемы безопасности с загрузками страницы.

9
ответ дан 9 December 2019 в 22:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: