Ajax消息最佳实践

时间:2010-06-07 20:29:53

标签: javascript xml ajax

假设我需要使用ajax异步向服务器询问包含相关数据的xml文件。这条消息应该是什么样的最佳做法是什么?它应该是get_data之类的字符串还是类似的字符串?应该是xml吗?我不需要长时间轮询,因为它是一次性(或接近它)请求。

感谢。

3 个答案:

答案 0 :(得分:1)

您可以使用标准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 );
    }   
});

答案 1 :(得分:0)

邮件应该是网址。

例如:http://www.example.com/get_data可以以您需要的格式返回所需的数据(xml,json)。

如果您需要其他一些数据,请使用其他网址。 http://www.example.com/someotherdata

答案 2 :(得分:0)

这实际上取决于目的,如果其他一切都是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 ); 
    }    
});

然后,服务器端控制器将适当地处理请求,并且客户端将知道返回时期望的数据。客户端和服务器端的密钥和值也是人类可读的。当然,时间间隔可以是时间戳或其他,无论何种需要。