Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/10: Рейтинг темы: голосов - 10, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
1

При попытке frame2.document.innerHTML дает: script error, Acces is denied, хотя alert(frame2.document) выдает нормально: [object]

17.01.2010, 11:15. Просмотров 2001. Ответов 18
Метки нет (Все метки)


Есть frameset и 2 frame
fram1 - грузится моя страница со скриптами
frame2 - грузится удаленная страничка, главное штоб не локальная

При Onload на framesete запускаются скрипты из frame1 которые работают с контентом frame2

При попытке frame2.document.innerHTML дает: script error, Acces is denied, хотя alert(frame2.document) выдает нормально: [object]

какиенибудь идеи?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2010, 11:15
Ответы с готовыми решениями:

Java Script объясните (document.all и .innerHTML). Обращение к серверу
var s = document.all("value").innerHTML; объясните правую часть присваивания пожалуйста. P.S....

Error saving document при попытке сохранить файл на внешней SD карте
Galaxy s4 google edition android 4.4.2 при попытке сохранить файл на внешней SD карте (к примеру...

document.body.innerHTML=document.body.innerHTML
Можно ли в HTML5 + Javascript + CSS сделать так чтобы присваивание...

Проблема с доступом 'statistics.document.all.element.innerHTML'
Приветствую! Есть следующий код: <IFRAME src = 'test.inc' id = statistics style = 'POSITION:...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
Записывайтесь на профессиональные курсы Fullstack-разработчиков на JavaScript‌
18
pl
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
17.01.2010, 11:47 2
Видимо содержимое фреймов относится к разным доменам, срабатывает механизм безопасности.
0
swed
17.01.2010, 11:52 3
попробуй так frame2.document.body.innerHTML
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
17.01.2010, 11:57  [ТС] 4
насшет frame2.document.body.innerHTML точно не пашет
а што начет 'фреймов относится к разным доменам', подробнее можно?
0
pl
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
17.01.2010, 12:04 5
Один фрем отображает страницу с адресом www.abc.com, другой фрейм страницу с адресом www.klm.com. Попытка изменить содержимое одного фрейма из другого, если они относятся к разным доменам, запрещена в целях безопасности, чтобы злонамеренный сайт не смог фальсифицировать другой сайт.
0
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
17.01.2010, 12:10  [ТС] 6
Но мы же разговариваем о клиентских скриптах, при чем здесь 'злонамеренный сайт не смог фальсифицировать другой сайт', серверная страничка будет как и была... или што-то не доходит до меня?
0
3 / 3 / 3
Регистрация: 25.05.2009
Сообщений: 2,576
17.01.2010, 13:01 7
о чём спор, мужики?
человек погорячился.. недавно познакомился с javascript и уже пытается что-то ломать, да ещё и так тупо, нахально я бы даже сказал!

Если бы всё было так просто, думаю, не релиба, не рамблера, не ещё какого друго сайта - уже не было бы!
0
80 / 56 / 68
Регистрация: 15.03.2007
Сообщений: 6,908
17.01.2010, 13:19 8
Запрещены не только попытки изменения, но и попытки чтения информации.
Более того, если один фрейм содержит документ http://abc.com, а второй httpS://abc.com, то они не могут обращаться к друг другу через JavaScript.

Подробнее описано на MSDN
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/sec_dhtml.asp?frame=true
0
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
17.01.2010, 18:39  [ТС] 9
tks
0
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
18.01.2010, 09:45  [ТС] 10
я как то не врубаюсь в идею 'механизма безопасности'

есть какаянибудь разница если мой скрипт обращается на удаленный хост, вбирает вес соотвествующий html, сохраняет его в отдельный файл потом уже обрабатывает его выше перечисленым методом( frameset-ом), разве это не обход 'механизма безопасности'?
0
80 / 56 / 68
Регистрация: 15.03.2007
Сообщений: 6,908
18.01.2010, 10:16 11
Мы говорили про защиту от сross-domain scripting. От того что вы описываете этот механизм защитить не может. И не должен. Ведь в этом случае оба документа будут из одного и того же домена - из вашего. Так что никаких нарушений.
0
swed
18.01.2010, 10:50 12
Все что ты хочеш сделать можно !!!
Но, для каких целей ,?
Если ты хочеш это сделать для того что бы запусть (submit) форму, в другом домене, то фиг вам

Если же ты динамически скопируе содержимое той стронички в свой фрейм, то вперед делай с ним все что захочиш
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
18.01.2010, 11:02  [ТС] 13
[ Если ты хочеш это сделать для того что бы запусть (submit) форму, в другом домене, то фиг вам ]

какая разница где я запущу submit, скопирую в фрейм или вызову в нем, оно же в обоих случаях на клиенте запускается, нафига нужна эта защита от сross-domain scripting?
0
swed
18.01.2010, 11:04 14
Честно я с этим так сильно не игрался,
Если что надо джелать с обработками рорм, то лучше не по средствам скриптов, возьми поичтай Java!
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
26.01.2010, 12:18  [ТС] 15
решил, может кто то ответит на вопрос

какая разница где я запущу submit, скопирую в фрейм или вызову в нем, оно же в обоих случаях на клиенте запускается, нафига нужна эта защита от сross-domain scripting?
0
80 / 56 / 68
Регистрация: 15.03.2007
Сообщений: 6,908
26.01.2010, 18:27 16
Это защита в основном требуется для предовращения воровства информации с других доменов 'на лету'. Представьте некий сайт предлагающий ввести пользователю информацию о его кредитной карте. И предствим некого злоумышленника делающего на своем сайте ссылку на этот сайт, так чтобы атакуемый сайт открывался во фрейме, а в еще одном (скрытом) фрейме будет лежать скрипт незаметно перехватывающий вводимую пользователем информацию из полей формы о кредитной карте и затем отправляюший ее злоумышленнику.

Так что дело совсем не в сабмите, а в безопасности информации. Поэтому запрещен любой доступ к документу в другом фрейме - не только на запись, но и на чтение.
0
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
26.01.2010, 19:13  [ТС] 17
што бы это получилось надо здоумышленному сайту прикинутся этаким добросовестным адрессом ...

вопрос все же остается открытым, и это уже не вопрос на который вы ответили, а вопрос о разности нажатия submita (смотри предыдущию страницу, последний вопрос)
0
0 / 0 / 0
Регистрация: 29.07.2008
Сообщений: 90
26.01.2010, 19:14  [ТС] 18
sorry, без нафига нужна
0
3 / 3 / 3
Регистрация: 25.05.2009
Сообщений: 2,576
26.01.2010, 20:37 19
ты бы лучше не пёр на пролом, а попытался обойти препятствие, всегда есть несколько способов это сделать!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.01.2010, 20:37

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

Ошибка в var iScrollTop = document.Fr1.document.body.ScrollTop;
есть страничка, на ней <IFRAME name='Fr1'></IFRAME>. Так вот когда я пишу var iScrollTop =...

Как вывести массив кроме alert и document.write
Возник такой вопрос. Я в JS новичок. Есть массив из чисел. Как его вывести на экран без...

Как применить стиль к методу alert и document.write?
Подскажите как применить стиль (можно и css) к методу alert и document.write. Я знаю что можно и...

Разница между document.querySelectorAll() и document.body.getElementByClassNam()
И document.querySelectorAll("selector") и document.body.getElementsByClassNam("selector")...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.