Grails поддерживает согласование содержимого из 3 различных источников:
- Принимать заголовок
- Параметр запроса (формат)
- Расширение URI
Вопрос в том, что он делает, когда получает информацию о содержании из более чем одного места, особенно когда они не согласны друг с другом?
Например, что произойдет, еслиGrails получил запрос, подобный следующему:
URL: http://example.com/book/list.html?format=json
Accept: application/xml
Заголовок Accept будет преобразован в xml, расширение URI будет преобразовано в html, а параметр будет преобразован в json.
Что бы это сделать:
import grails.converters.*
class BookController {
def list() {
def books = Book.list()
withFormat {
html bookList: books
xml { render books as XML }
json { render books as JSON }
}
}
}