DataSnap是一個用于構建多層次數據應用程序的應用程序框架,它能夠將類似REST和SOAP的Web服務暴露給客戶端,為客戶端和服務端提供高效通信的途徑。其中,DataSnap JSON是通過輕量級JSON格式來傳遞數據和通信的一種方法。
var productsClient: TDSRestClient; products: TFDJSONDataSets; productsParams: TJSONArray; response: TJSONArray; begin //創建一個DataSnap客戶端 productsClient := TDSRestClient.Create(nil); try //設置服務端地址 productsClient.BaseURL := 'http://localhost:8080/datasnap/rest/TServerMethods1'; productsClient.ContentType := 'application/json'; //構建請求參數 productsParams := TJSONArray.Create; productsParams.Add('100'); //調用服務端方法 response := productsClient.ExecuteJSONArray('GetProducts', productsParams); //解析服務端返回的JSON數據 products := TFDJSONDataSets.Create; TFDJSONDataSetsWriter.ListAdd(products, response.Get(0).Value); //處理返回的數據 //TODO... finally //釋放資源 productsParams.Free; response.Free; productsClient.Free; end; end;
在上述代碼中,我們創建了一個DataSnap客戶端,并通過指定服務端地址,調用名為“GetProducts”的服務端方法。服務端返回的數據格式為JSONArray類型,我們需要通過FDJSON轉化成TFDJSONDataSets,再進行解析和處理。值得注意的是,DataSnap JSON格式是一種輕量級、高效的編碼方式,非常適合用于小型的數據傳遞和通信。