[jquery] как json запрос слать методом post

Тема в разделе "JavaScript", создана пользователем dandandan, 16 янв 2012.

Модераторы: ZiX
  1. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    991
    Симпатии:
    267
    Необходимо пересылать приличные объемы информации между сайтами из окна браузера. На сколько знаю такое можно сделать только с помощью json. Столкнулся с ограничением на длину строки урла (json данные отсылает методом ГЕТ). Можно ли (и как) json запрос отсылать методом пост, чтобы потом получить данные в ответ?

    Нашел немного инфы здесь, но не для jquery


    Перейти по ссылке
     
  2. myweb

    myweb Среда обитания WEB

    Регистр.:
    10 сен 2007
    Сообщения:
    539
    Симпатии:
    246
  3. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
  4. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    991
    Симпатии:
    267
    Myweb, вы, к сожалению, невнимательно прочитали вопрос. Мне не нужно отправлять данные в формате джейсон, мне нужно отправить именно json запрос на другой сервер. Т.к. не json запросы между разными доменами не работают.

    Про CORS интересно написано, но у клиентов, где размещается библиотека jquery, ни у кого html5 нет.
    Будет ли работать заголовок для НЕ ХТМЛ5 ?
    PHP:
    header('Access-Control-Allow-Origin: javascript.ru');
     
  5. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
    В одном из проектов я использую XHR2+CORS для HTML5 клиентов и iframe-транспорт как фоллбек для тех, у кого HTML5 нет.
    Думаю, вам стоит пойти тем же путем. Единственный минут подобной связки — iframe-транспортом практически невозможно управлять из-за ограничений безопасности.
     
  6. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    991
    Симпатии:
    267
    Через ифрейм можно сделать пост запрос с помощью javascript ? К сожалению, в этом направлении в яваскрипте не силен.
    Смысл проекта такой: Есть форма с данными. Админ(ы) ставит ее на свой(и) сайт(ы) (доступа к сайту(ам) у меня нет). Пользователь вбивает в нее данные. Почти все данные на русском языке. В результате они после функции escape() преобразуются в длинную строку. Основная задача - после отправки данных - не перезагружать страницу. Выход, который я нашел - общение между серваками только через json запрос.

    Получается так, что не все данные доходят. Я так понял, что из-за ограничение адресной строки. Сам я столкнулся с этим в эксплорере 7 при тестах на локальной машине.
     
  7. unnuller

    unnuller Создатель

    Регистр.:
    24 янв 2009
    Сообщения:
    18
    Симпатии:
    0
    $.post(url, { data }, function() {}, 'json')
     
  8. coolparty

    coolparty Постоялец

    Регистр.:
    6 ноя 2006
    Сообщения:
    63
    Симпатии:
    25
    А почему не сделать обращение к другому серверу через пхп? Отправляете запрос на свой сервер, а там уже забираете данные откуда вам надо.
     
  9. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    991
    Симпатии:
    267
    Это не мой сервер. Отправить на него запрос не могу. Ставить на чужие сервера php скрипты - мне "вера" не позволяет. Тем более они на разных хостингах находятся, а как известно - настройки сильно отличаются от хостинга к хостингу.
    У меня есть только подключенный ява скрипт и больше ничего.

    Это будет именно межсерверный запрос или просто запрос в формате json? Я склоняюсь ко второму.
     
  10. coolparty

    coolparty Постоялец

    Регистр.:
    6 ноя 2006
    Сообщения:
    63
    Симпатии:
    25
    С версии 1.2 jQuery поддерживает JSONP нативно.