Was ist ein effizienter Weg, um RESTful API mit Grails zu erstellen / verwalten?
Ich habe meine erste Grails-Anwendung erstellt. Meine URL-Zuordnungen sind das, was die Standardanwendung bereitstellt:
static mappings = {
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}
"/"(view:"/index")
"500"(view:'/error')
}
Senario
Ich habe einen Controller angerufenColorController
mit Aktionensave
undlist
. Es macht einfach so etwas:
def save () {
def colorInstance = new Color(params)
colorInstance.save(flush: true)
}
def list () {
[colorList: Color.list, colorTotal: Color.count()]
}
Ich möchte eine einfache API für diese Aktionen erstellen.
Die Sicherungsaktion sollte Parameter als JSON akzeptieren und eine erfolgreiche Nachricht bereitstellen, wenn die Datensätze gespeichert werden.Die Listenaktion sollte die Liste als JSON bereitstellenFragen
Sollte ich eine separate URL-Zuordnung für die API vornehmen? (z.B.http://<domain>/<app>/rest/controller/action
)Sollte ich einen separaten Controller für meine APIs erstellen?Ich benutze das Spring Security Plugin zur Authentifizierung. Aber irgendwann möchte ich vielleicht auch die erholsame API authentifizieren. Was sind einige Lösungen dafür?Wie kann ich diese einfachen Aktionen ändern, um das zu tun, was ich brauche, wenn ich denselben Controller verwende?