Datasnap.DSService.TDSRESTService

De RAD Studio API Documentation
Aller à : navigation, rechercher

Datasnap.DSService.TDSServiceDatasnap.DSService.TDSRequestFilterManagerSystem.TObjectTDSRESTService

Delphi

TDSRESTService = class(TDSService)

C++

class PASCALIMPLEMENTATION TDSRESTService : public TDSService

Propriétés

Type Visibilité  Source Unité  Parent
class public
Datasnap.DSService.pas
Datasnap.DSService.hpp
Datasnap.DSService Datasnap.DSService


Description

Implémentation du service REST.

Les méthodes de requête sont mappées comme suit sur les opérations CRUD (EN) :

GET : /MethodClass/MethodName/inputParameter[/inputParameter]*
Requête JSON : {"execute":{"MethodClass.MethodName":[inputParameter[,inputParameter]*]}}
PUT : /MethodClass/MethodName/inputParameter[/inputparameter]* et [content]
Requête JSON : {"execute":{"MethodClass.acceptMethodName":[inputParameter[,inputParameter]*[,JSONValue]}}
POST : /MethodClass/MethodName/inputParameter[/inputparameter]* et [content]
Requête JSON : {"execute":{"MethodClass.updateMethodName":[inputParameter[,inputParameter]*[,JSONValue]}}
DELETE : /MethodClass/MethodName/inputParameter[/inputParameter]*
Requête JSON : {"execute":{"MethodClass.cancelMethodName":[inputParameter[,inputParameter]*]}}

Par exemple, pour gérer une connexion de base de données, vous pouvez utiliser :

Message PUT http://mySite.com/datasnap/rest/Test/Connection/MSSQL1 a pour résultat dans la requête JSON
{"execute":{"Test.acceptConnection":["MSSQL1"]}}
Message POST http://mySite.com/datasnap/rest/Test/Connection/MSSQL2 a pour résultat dans la requête JSON
{"execute":{"Test.updateConnection":["MSSQL2"]}}
Message GET http://mySite.com/datasnap/rest/Test/Connection a pour résultat dans la requête JSON
{"execute":{"Test.Connection":[]}}
Message DELETE http://mySite.com/datasnap/rest/Test/Connection a pour résultat dans la requête JSON
{"execute":{"Test.cancelConnection":[]}}

Vous pouvez implémenter ces méthodes comme suit :

  • acceptConnection ouvre une connexion appelée "MSSQL1".
  • updateConnection ferme le cas échéant la connexion existante et en ouvre une nouvelle.
  • Connection renvoie le nom de la connexion ouverte en cours.
  • cancelConnection ferme le cas échéant la connexion existante.

Lorsque des paramètres de sortie ou de retour sont définis, ils sont intégrés à la réponse JSON :

{
  "result": [
    parameterValue1,
    parameterValue2,
    // …
  ]
}

Si le serveur envoie une exception, la réponse JSON est :

{
    "error": "Error message."
}

Voir aussi