Междоменное заполнение формы javascript, обратный прокси
Мне нужен заполнитель форм javascript, который может обойти "ту же политику происхождения", которую используют большинство современных браузеров.
Я сделал скрипт, который открывает нужный сайт / форму в новом браузере. С помощью обработчика, возвращаемого методом window.open, я хочу получить входные данные с помощью WindowWandler.document.getElementById('inputx') и заполнить их (доступ запрещен).
Можно ли решить эту проблему, используя Isapi Rewrite ( официальный сайт) в IIS 6, действующий как обратный прокси-сервер? Если это так, как бы я настроить обратный прокси-сервер?
Вот как далеко я получил:
RewriteEngine on
RewriteLogLevel 9
LogLevel debug
RewriteRule CarChecker https://the.actualcarchecker.com/CheckCar.aspx$1 [NC,P]
Переписать работает, http://ourcompany.com/ourapplication/CarChecker, как видно из регистрации. Внутри нашей компании я могу запустить carchecker, как если бы он был в нашем собственном домене. За исключением того, что "та же политика происхождения" все еще в силе.
С Уважением,
Мишель
1 ответ
Хотя все еще немного неясно с деталями (например, в каком браузере и в каком домене находится исходный вызов window.open и что представляет собой новый домен)...
Вы можете подходить к этому с неправильной точки зрения. Хотя теоретически обратный прокси-сервер может быть использован для решения междоменных проблем, в решении этой проблемы будет масса проблем. Вы будете исправлять нескончаемый поток проблем с изменяемым содержимым и другими вещами, которые вы даже не можете себе представить. И вообще, попытка обойти безопасность браузера таким способом - плохая идея. Я настоятельно рекомендую пойти по одному из двух маршрутов:
1) Purchase some software like RoboForm that functions as an add-on to your browser, and isn't limited to the security model inside the browser.
2) Rewrite some of your JavaScript logic in Bookmarklets and JSONP requests. Look at how the "Note in Google Reader" or the "Note in Evernote" bookmarklets (or chrome extensions) do it - this is basically what you are going to need to do.