Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Ajax приложение с поддержкой стории (Отказано в доступе) ()
Author Message
Guest






Карма: 388
   поощрить/наказать


PostPosted: Wed Aug 15, 2007 10:06 am (написано за 12 минут 44 секунды)
   Post subject: Ajax приложение с поддержкой стории (Отказано в доступе)
Reply with quote

Эта тема имеет свои корни вот тут:
forum.dklab.ru/js/other/IstoriyaBrauzeraIAjax.html


Для навигации по сайту использую библиотеку JsHttpRequest.

Для поддержки истории в браузере использую билиотеку RSH
codinginparadise.org/projects/dhtml_history/README.html


Все в сборе вместе с кодом можно посмотреть на DEMO:
liteweb.maxaman-soft.ru/

Так же можно скачать рабочий пример вот от сюда:
joomlaforum.ru/index.php/topic,16631.msg106435.html#msg106435



Как это работает:
1.
При хождении по ссылкам, их урл приписывается в адресной строке браузера как якорь:
liteweb.maxaman-soft.ru/#content/view/1/1/

content/view/1/1/ - это и есть урл.

2.
Одновременно с этим этот урл отправляется на сервер(с помощью JsHttpRequest).

3.
С сервера возвращается нужный контент - который потом вставляется в нужную область сайта (в div).

4.
Ссылку из адресной строки с якорем можно сохранить, а если потом ввести ее - то JS скрипт выхватит значение якоря и подгрузит нужный контент.


И вот возникла проблема:
Если первый раз открыть страницу по сохраненной ранее ссылке с якорем - все работает как надо.
Но если потом ввести другую сохраненную ссылку с якорем - возникает ошибка "Отказано в доступе".

Есть какие-нибудь соображения?


Спасибо.
Back to top
Guest






Карма: 388
   поощрить/наказать


PostPosted: Wed Aug 15, 2007 12:36 pm (спустя 2 часа 30 минут; написано за 1 минуту 39 секунд)
   Post subject:
Reply with quote

И вот еще вопрос: стиит ли вообще применять JsHttpRequest для организации навигации, т.е. когда посылаются большие объемы текста - именно текста а не переменных. С которыми так удобно работать с помощью JsHttpRequest.
Back to top
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Thu Aug 16, 2007 2:45 pm (спустя 1 день 2 часа 9 минут; написано за 2 минуты 2 секунды)
   Post subject:
Reply with quote

А где там эта ошибка? У меня не воспроизводится.
Вот ошибка historyData has no properties - возникает при описанном Вами подходе, но это уже вроде бы не относится к библиотеке.
Гость wrote:
стиит ли вообще применять JsHttpRequest для организации навигации, т.е. когда посылаются большие объемы текста - именно текста а не переменных
Почему нет? У нее есть большой плюс - прозрачная работа с кодировками. В других библиотеках, насколько я знаю, этого нет.

Но вообще, мое мнение - зря Вы все это делаете. Потому что поисковики сайт, построенный целиком на аяксе, индексировать не модут - они ничего не знают про JavaScript. Соответственно, Вам придется все равно держать альтернативные (нормальные) URL-ы, т.е. поддерживать сразу 2 способа навигации по сайту. Ради чего?
Back to top
View user's profile Send private message Send e-mail
Guest






Карма: 388
   поощрить/наказать


PostPosted: Thu Aug 16, 2007 3:31 pm (спустя 45 минут; написано за 7 минут 32 секунды)
   Post subject:
Reply with quote

Дмитрий Котеров wrote:
А где там эта ошибка? У меня не воспроизводится.
Вот ошибка historyData has no properties - возникает при описанном Вами подходе, но это уже вроде бы не относится к библиотеке.
да, там какие-то проблемы именно в библиотеке для поддержки истории. Я сейчас нашел гораздо лучьшую замену - и похоже вообще единственную которая работает в Opera.
Дмитрий Котеров wrote:
Гость wrote:
стиит ли вообще применять JsHttpRequest для организации навигации, т.е. когда посылаются большие объемы текста - именно текста а не переменных
Почему нет? У нее есть большой плюс - прозрачная работа с кодировками. В других библиотеках, насколько я знаю, этого нет.
Вот это сразу привлекает. Большое спасибо за библиотеку.
Дмитрий Котеров wrote:
Но вообще, мое мнение - зря Вы все это делаете. Потому что поисковики сайт, построенный целиком на аяксе, индексировать не модут - они ничего не знают про JavaScript. Соответственно, Вам придется все равно держать альтернативные (нормальные) URL-ы, т.е. поддерживать сразу 2 способа навигации по сайту. Ради чего?
Если Вы более внимательно посмотрите на DEMO сайт, то увидите что все УРЛ стандартные - и поискови по ним ходят точно также как и по любым другим.

Ссылки выхватываются с помощью JS, и их обработчики нажатия заменяются на нужные для Ajax навигации. Если JS отключить - то сайтом можно продолжать пользоваться - и даже не заметить что что-то не так.
Back to top
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Thu Aug 16, 2007 10:22 pm (спустя 6 часов 50 минут; написано за 30 секунд)
   Post subject:
Reply with quote

Я все это понимаю.
Я не понимаю другого - зачем поддерживать 2 схемы навигации по сайту, когда достаточно и одной.
Back to top
View user's profile Send private message Send e-mail
Guest






Карма: 388
   поощрить/наказать


PostPosted: Fri Aug 17, 2007 3:20 pm (спустя 16 часов 58 минут; написано за 4 минуты 47 секунд)
   Post subject:
Reply with quote

Дмитрий Котеров wrote:
Я все это понимаю.
Я не понимаю другого - зачем поддерживать 2 схемы навигации по сайту, когда достаточно и одной.
Поддерживать это громко сказано - ссылки для Ajax генерируются на основе исходных 4-мя строчками кода.


Поставил новую поддержку истории. Все работает отлично дома на Денвере.
Но перенес на хостинг и в IE
При первой загрузке возникает ошибка "Отказано в доступе"
Если щелкать по ссылкам - ошибка "Разрешение отклонено"

И все это только в IE.
В FF и Opera - отлично работает.

Вот пример:
liteweb.maxaman-soft.ru/index.php


Какие есть соображения?

спасибо.
Back to top
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Fri Aug 17, 2007 5:38 pm (спустя 2 часа 17 минут; написано за 45 секунд)
   Post subject:
Reply with quote

Ошибка очень похожа на ситуацию, когда Вы используете то domain.ru, то www.domain.ru, и смешиваете их. Для браузера это - два совершенно разных домена, и обмен данными между ними недопустим. Проверьте, может, тут проблема.
Back to top
View user's profile Send private message Send e-mail
bæv
Модератор «Дзена»



Joined: 27 Aug 2003
Posts: 7275
Карма: 9985
   поощрить/наказать


PostPosted: Sun Jan 25, 2009 8:25 pm (спустя 1 год 5 месяцев 8 дней 2 часа 47 минут)
   Post subject:
Reply with quote


М

Ветка выделена в отдельную тему «как разрешить чтобы смешивались domain.ru и www.domain.ru»,
расположенную в форуме Прочее (25 Января 2009, 20:25).
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
Post a reply
Username
Subject
Господа спамеры и оптимизаторы!

Вы можете даже и не пытаться вставлять в текст поста ссылки - они все равно автоматически удаляются (вернее, тэги <a> заменяются на тэги <u>).

Но если не поверите и все же попытаетесь - как только увидите, что все безрезультатно, удалите свой пост, пожалуйста. Модераторы тоже люди, нехорошо, если они погрязнут в тоннах спама.
     

Disable BBCode in this post
Disable Smilies in this post
    HTML is OFF
BBCode is ON
Smilies are ON
You cannot post new topics in this forum. You can reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML