Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> jQuery, Ajax 
:(
    Опции темы
DimaSiK
Дата 3.12.2008, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 20.8.2006

Репутация: нет
Всего: нет



Возможно ли сделать AJAX запрос к сайту , который находится вне домена на котором работает сам скрипт? Пробую вот такую конструкцию
Код

$.post("http://ya.ru", function(data){
              alert("Data Loaded: " + data);
            });

но получаею ошибку связанную с политиками безопасности.


--------------------
Мы не стараемся быть первыми, мы стараемся быть лучшими.

PM MAIL   Вверх
Greendrake
Дата 3.12.2008, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 364
Регистрация: 14.7.2005

Репутация: нет
Всего: 6



С другого домена можно грузить только яваскриптовый контент (ставим параметр dataType='script').
Ну или ещё вариант — использовать на своём домене сервис-прокси.
PM MAIL   Вверх
DimaSiK
Дата 4.12.2008, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 20.8.2006

Репутация: нет
Всего: нет



Проблемма в следующем. Пишу offline версию части большого web-приложения, использую GoogleGears. Написал одну страниц, для пробы,, которая работает на SQLite + JQuery + JavaScript + GoogleGears. Использовать класс GoogleGears для посылки AJAX запросов не хочется, уж очень он простенький, поэтому юзаю JQuery. Стоит последняя задача, отправка локальных данных на сервер, отпарвака AJAX-ом в фоне. Вот тут и возникла проблемма отправки на другой домен. Так как JQuery ждет, что я буду делать все в локальном пространстве и офигевает, когда я заставляю его обратиться к удаленному сайту smile.  Вообщем, возможно ли решить данную проблемму? 

Это сообщение отредактировал(а) DimaSiK - 4.12.2008, 11:37


--------------------
Мы не стараемся быть первыми, мы стараемся быть лучшими.

PM MAIL   Вверх
DimaSiK
Дата 4.12.2008, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 20.8.2006

Репутация: нет
Всего: нет



Цитата(Greendrake @ 3.12.2008,  23:50)
С другого домена можно грузить только яваскриптовый контент (ставим параметр dataType='script').
Ну или ещё вариант — использовать на своём домене сервис-прокси.

Необязательно, достаточно использовать  $.getJSON. Конструкция позволяет обращаться куда угодно. Возникла дркугая роблема. Использю следующее:
Код

$.getJSON("some.url/?callback=?",
        function(json){
            isOnline = json.isConnected;
            
            if(isOnline) {
               $('#status')[0].value = 'STATUS: ONLINE';
               $('#status').removeAttr('disabled').removeClass('disabled');
               $('#upload').removeAttr('disabled').removeClass('disabled');
            } else {
               $('#status')[0].value = 'STATUS: OFFLINE';
               $('status').attr('disabled', 'disabled').addClass('disabled');
               $('upload').attr('disabled', 'disabled').addClass('disabled');
            } 
        });

Если имеется подключение - кнопки активируются, если нет - деактивируются. Когда сетевое соединение активно(подключены), все работает, если я выключаю сетевое соединение(моделирую оффлайн) то скрипт попросту не выполняет ничего и не возвращает исключений и событий. В связи с этим кнопки не деактивируются. 

Это сообщение отредактировал(а) DimaSiK - 4.12.2008, 16:32


--------------------
Мы не стараемся быть первыми, мы стараемся быть лучшими.

PM MAIL   Вверх
Greendrake
Дата 4.12.2008, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 364
Регистрация: 14.7.2005

Репутация: нет
Всего: 6



Цитата(DimaSiK @ 4.12.2008,  16:27)
если я выключаю сетевое соединение(моделирую оффлайн) то скрипт попросту не выполняет ничего и не возвращает исключений и событий

Естественно — ведь передаваемый коллбэк вызывается только при успешном завершении обращения, а неудачи просто игнорируются.
Чтобы что-то сделать при неудачном завершении, придётся использовать оригинальный $.ajax() с error-коллбэком.

Это сообщение отредактировал(а) Greendrake - 4.12.2008, 16:55
PM MAIL   Вверх
DimaSiK
Дата 4.12.2008, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 20.8.2006

Репутация: нет
Всего: нет



Цитата(Greendrake @ 4.12.2008,  16:54)
Цитата(DimaSiK @ 4.12.2008,  16:27)
если я выключаю сетевое соединение(моделирую оффлайн) то скрипт попросту не выполняет ничего и не возвращает исключений и событий

Естественно — ведь передаваемый коллбэк вызывается только при успешном завершении обращения, а неудачи просто игнорируются.
Чтобы что-то сделать при неудачном завершении, придётся использовать оригинальный $.ajax() с error-коллбэком.

$.ajax не работает при обращении к другому домену.


--------------------
Мы не стараемся быть первыми, мы стараемся быть лучшими.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0443 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.