Написать jquery.ajax из существующего JavaScript - PullRequest
0 голосов
/ 13 мая 2011

Я нашел эту статью: http://msdn.microsoft.com/en-us/library/dd251073.aspx

Как я могу написать запрос 'get', используя jquery.ajax?

Ответы [ 3 ]

1 голос
/ 13 мая 2011

Вы можете использовать метод .get().

0 голосов
/ 13 мая 2011

Это зависит от того, соблюдает ли API Bing стандартный метод ?callback=function для определения обратных вызовов JSONP, но если это так, то это должна делать упрощенная версия функции Search():

// Bing API 2.0 code sample demonstrating the use of the
// Spell SourceType over the JSON Protocol.
function Search()
{
        var requestStr = "http://api.bing.net/json.aspx?"

        // Common request fields (required)
        + "AppId=" + AppId
        + "&Query=Mispeling words is a common ocurrence."
        + "&Sources=Spell"

        // Common request fields (optional)
        + "&Version=2.0"
        + "&Market=en-us"
        + "&Options=EnableHighlighting"

        $.getJSON(requestStr, SearchCompleted);
}

Имейте в виду, что ни один из подходов не вызывает GET напрямую, как вы могли бы использовать для запросов AJAX на локальный сервер с использованием XMLHttpRequest.

Чтобы обойти междоменное ограничение для XHR, JSONP работает, внедряя новый элемент сценария в ваш документ, который затем заставляет браузер загрузить (через GET) и выполнить этот удаленный сценарий. Содержимое этого удаленного скрипта представляет собой один вызов функции для функции обратного вызова со всей полезной нагрузкой JSON в качестве ее параметра.


Если это не сработает, в том числе те опции обратного вызова, специфичные для Bing, должны нормально работать вместе с jQuery:

// Bing API 2.0 code sample demonstrating the use of the
// Spell SourceType over the JSON Protocol.
function Search()
{
        var requestStr = "http://api.bing.net/json.aspx?"

        // Common request fields (required)
        + "AppId=" + AppId
        + "&Query=Mispeling words is a common ocurrence."
        + "&Sources=Spell"

        // Common request fields (optional)
        + "&Version=2.0"
        + "&Market=en-us"
        + "&Options=EnableHighlighting"

        // JSON-specific request fields (optional)
        + "&JsonType=callback"
        + "&JsonCallback=SearchCompleted";

        $.getJSON(requestStr);
}

Имейте в виду, что на данный момент (и несколько раньше) вы на самом деле совсем не используете сам jQuery. Даже если $.getJSON() или $.ajax() или $.get() похоже, что они делают что-то более мощное, чем пример MSDN, в этом случае jQuery собирается сделать то же самое (внедрить элемент скрипта с указанным src в requestStr).

0 голосов
/ 13 мая 2011

http://api.jquery.com/jQuery.get/

Или просто используйте обычный метод $ .ajax () (http://api.jquery.com/jQuery.ajax/),, который по умолчанию используется для запроса GET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...