In Restlet, qual è la differenza tra una classe Restlet e una classe di risorse?
Domanda
Ho passato attraverso il bit firstResource del tutorial Restlet 1.1 e messo insieme un servizio web che gestisce GET, POST, DELETE, posti dalla sottoclasse della classe Resource
e ridefinendo i metodi appropriati e utilizzando un Router
per fissare la Resource
sottoclasse classi.
Così ho lasciato pensare - qual è il punto di un Restlet
?
-
posso allegare un
Resource
o unRestlet
a unApplication
Router
-
Un
Resource
ha metodi per gestire HTTP GET POST etc. -
Un
Restlet
ha un metodohandle
- fare in qualche modo avanti che a una classeResource
?
Qual è la differenza? Quando posso utilizzare uno o l'altro? Cosa avrei messo in un metodo Restlet
handle
?
Grazie.
Soluzione
Restlet
è la classe base per le varie strutture del server Restlet, tra i quali Application
e Router
. Quando il suo metodo handle()
viene chiamato in cui dovrebbe interpretare la richiesta, inviare ad un adeguato Restlet bambino o interrogare la risorsa corrispondente (GET / POST / ... gestire i metodi), e mettere il risultato di nuovo nella risposta.
Quindi, restlets e le risorse sono nodi di un albero. Le risorse sono le foglie di quell'albero.
Restlets di solito non rispondono alla richiesta, ma li delegano l'albero. Risorse in realtà rispondono.
In generale, è programmare solo di risorse personalizzate e utilizzare restlets predefiniti.