Ajax message лучшие практики - PullRequest
0 голосов
/ 08 июня 2010

Скажем, мне нужно использовать ajax для асинхронного запроса к серверу XML-файла, содержащего соответствующие данные.Какова наилучшая практика, как должно выглядеть это сообщение?Это должна быть строка типа get_data или что-то подобное?Должно ли это быть XML?Мне не нужен длительный опрос, так как это одноразовый (или близкий к нему) запрос.

Спасибо.

Ответы [ 3 ]

1 голос
/ 08 июня 2010

Вы можете использовать стандартную HTTP Post или Get для отправки запроса на ваш сервер. Если вам не нужно указывать какие-либо параметры для скрипта на стороне сервера (user_id и т. Д.), Тогда просто добавьте get_data в качестве параметра url.

http://www.domain.com/script?get_data

Если вам необходимо отправить какие-либо параметры на сервер для получения данных, лучше всего закодировать параметры в JSON или XML и отправить их как часть данных вашего запроса AJAX. С данными JQuery и JSON:

$.ajax({
    type: "GET",
    url: "http://www.domain.com/script",
    data: { key: "value", key2: "value2" },
    async: true,
    dataType: "json",
    success: function( data, textStatus ) { 
        someCallbackFucntion( data );
    }   
});
0 голосов
/ 08 июня 2010

Это действительно зависит от цели, если все остальное - XML, перейдите на XML. Лично я предпочитаю JSON (по крайней мере, на стороне клиента).

В недавней реализации, которую я сделал, я использовал простой запрос POST, где ключ представлял тип данных, а значение содержало временной интервал, который он должен возвращать.

Что может быть (jQuery):

$.ajax({ 
    type: "POST", 
    url: "http://www.domain.com/script", 
    data: { stock_value: "last_30_min", group_activity: "last_20" }, 
    async: true, 
    dataType: "json", 
    success: function( data, textStatus ) {  
        someCallbackFucntion( data ); 
    }    
});

Контроллер на стороне сервера затем обработает запрос соответствующим образом, и сторона на стороне клиента будет знать, какие данные ожидать, когда он вернется. Также ключ и значение могут быть понятны человеку и на стороне клиента, и на стороне сервера. Конечно, временные интервалы могут быть временной меткой или иным, в зависимости от того, что вам нужно.

0 голосов
/ 08 июня 2010

В сообщении должен быть указан URL.

Например: http://www.example.com/get_data может вернуть нужные данные в нужном формате (xml, json).

Если вам нужны другие данные, используйте другой URL. http://www.example.com/someotherdata

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