簡體   English   中英

Ajax消息最佳實踐

[英]Ajax message best practices

說我需要使用ajax異步地向服務器請求包含相關數據的xml文件。 此消息的外觀最佳做法是什么? 應該是像get_data類的字符串還是類似的東西? 應該是xml嗎? 我真的不需要長時間的輪詢,因為它是一次(或接近它)的請求。

謝謝。

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

該消息應為網址。

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

如果您需要其他數據,請使用其他網址。 http://www.example.com/someotherdata

這實際上取決於目的,如果其他所有內容都是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 ); 
    }    
});

然后,服務器端控制器將適當地處理該請求,而客戶端端將知道在返回時期望什么數據。 而且,密鑰和值在客戶端和服務器端都是人類可讀的。 當然,時間間隔可以是時間戳,也可以是其他時間戳,無論需要如何。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM