Pull to refresh

Comments 10

Только window.name — слишком громоздкая техника, требуемая только для IE6-7 и для неё тоже требуются скрипты с 2 сторон фрейма — одна сторона отдаёт текст в name, другая сторона принимает. Этот приём, в document-2 и document-3 у Вас, требуют скриптов внутри страницы. А ниже читаем: «хм… а что postMessage/XMLHttpRequest2/XDomainRequest отменили?» — «Устанавливаем соединения с ресурсами, без установленных на них скриптов». (И где вообще коды в этой статье?)

Так как всё идёт через анонимайзер, то нет вообще проблемы с тем, чтобы залезть в любой фрейм и установить там любой нужный скрипт. Или использовать прямой разбор DOM, или чтение JS — всё, что хотите. Зачем вообще кроссдоменные методы?

Есть способ вообще обойтись без прокси и общаться кроссдоменно из произвольных фреймов, например, Google+-кнопок. Для этого в каждый домен внедряются юзерскрипты для обмена по postMessage и в них пишутся небольшие процедуры. Так, получаем неискажённые анонимайзерами страницы без необходимости подключать сторонние серверы.
spmb написал: window.name — слишком громоздкая техника,
Предложите иное для обмена вкладок с разных доменов?(Есть возможжность для новых браузеров через history Api, но отнюдь не быстрее.
spmb написал: Есть способ вообще обойтись без прокси и общаться кроссдоменно из произвольных фреймов, например, Google+-кнопок. Для этого в каждый домен внедряются юзерскрипты

Cуть как раз в том чтобы скриптом сделать полную эмуляцию возможности собственного прокси и как раз не используем внедрения в каждый домен юзерскриптов" (наверно подразумевается заранее), — не ожидаем, а работаем с тем что есть.
> Предложите иное для обмена вкладок с разных доменов
--Почему с разных, если анонимайзер делает всё с одного домена? Поэтому обращаемся напрямую через фрейм.

onload = function(){ var win2 = $(#ид_фрейма).contentWindow;
	var win2.myScript = function(){alert('Я из фрейма');}
	win2.myScript();
}

(Точнее, с кроссбраузерными оговорками, как в www.w3schools.com/jsref/prop_frame_contentwindow.asp .)
Вписали свою функцию и выполнили её, когда надо. Совершенно нет смысла и передавать что-то через атрибут name, когда можно напрямую, если только не готовить скрипты для кроссдоменного взаимодействия в IE6-7.

> Cуть как раз в том чтобы скриптом сделать полную эмуляцию возможности собственного прокси
--Тогда это зависит от начальной задачи. Я, например, подумал, что нужна эмуляция доступности всех доменов по CORS, иначе зачем нужно это window.name?
spmb написал: -Почему с разных, если анонимайзер делает всё с одного домена? Поэтому обращаемся напрямую через фрейм.

Хм — Вы станете пользовацо сайтом, — коли будете засылать всех пользователей не со своего адреса, а с анонимайзер+адрес ?, Суть в том, что процесс для пользователя неявный, всё это в скрытом фрейме frame0 и итог транслируется на главный документ (addr0 (document0) — на нашем родном домене.

Все ухищрения для переноса результата на домен document0.
Доступность организуется через
Jumping tabs in frame: Для организации обмена, вкладки с document-2 и document-3 переключаются туда-сюда. Обмен данными между вкладками frame1 производится через window.name.
Который связывает домены исходной родительской страницы с доменом анонимайзера.
Во фрейме два документа с разных доменов связаны через window.name.
Поправил Oбмен данных, пункт 2. для ясности:
''Обмен данными между вкладками с разных доменов во frame1 производится через window.name.''
Я, например, подумал, что нужна эмуляция доступности всех доменов по CORS,

Доступны, без эмуляции, — Собственно в статье всё вроде расписано: Есть доступ к любому домену.
Есть исключения с противодействиями антифрейм-скриптов, но они легко обходятся использованием анонимайзеров с настраиваемой блокировкой скриптов: Во frame0, frame1, — ставим анонимайзер с установленным признаком 'без блокировки', в frame2 — с 'блокировкой', (подобное использовал для Drag-and-drop картинок c гуглокартинок.
Если необходимо получения полного контента документа с aдреса anonimaiser+addr1 вместе со скриптами можно использовать обычный XMLHttpRequest — запросы из frame0.
spmb написал: Так, получаем неискажённые анонимайзерами страницы без необходимости подключать сторонние серверы.
При анонимайзерах с линейным кодированием ссылок код взятой страницы легко перепарсивается в исходный для данного сайта, хотя имхо обычный смысл работы прокси не взятие именно ссылочного контента, а авторизация и возможность отправлять/принимать и передавать информацию находясь на подгруженном сайте в атоматическом программном режиме.
К примеру подцепить к форуму сервис заливки файлов не поддерживающих API для всех пользователей,
Сделать перетаскивания(пакетное) с гуголкартинок( по желаему запросу) прямо на сайт.
Sign up to leave a comment.

Articles