W metodzie kontrolera, sprawdź request.format
. Należy określić json
. Zgaduję, że to nie będzie tutaj, ale może dać ci wskazówki, jak twoja ładunek jest interpretowany.
W pliku Config.groovy, chciałbym ustawić następujące wartości:
grails.mime.file.extensions = false
grails.mime.use.accept.header = false
W tym samym pliku, sprawdź grails.mime.types
. upewnij się, że zawiera on json: ['application/json', 'text/json']
, co prawdopodobnie spowoduje, ale umieść go powyżej */*
. Te wpisy są oceniane w kolejności (było to prawdą w wersjach wcześniejszych 2.1, nie było "zweryfikowano, że jest teraz, ale co do cholery). W związku z tym, jak wspomniano powyżej, ustaw twój nagłówek content-type
na jeden z powyższych typów MIME.
Na koniec przetestuj za pomocą podkręcania, za pomocą kalkulatora Tomasz Kalkosiński lub, aby użyć RESTClient dla FF, kliknij "Nagłówki" na samej górze strony klienta (w lewym górnym rogu znajdują się 4 klikalne elementy; nagłówki są jednym Od świeżego RESTClienta może być konieczne wybranie "Custom Header" .Nie pamiętam)
Musisz ustawić contentType swojego żądania na 'application/json', aby kontroler automatycznie analizował/unmarshals wysłanego JSON. Jak wysłać swoją prośbę? – aiolos
Używam rozszerzenia Extreme Fire Clienta. Jak to ustawić? –
Dodaj wiersz w nagłówku żądania: 'Content-Type' z wartością' application/json'. Widzę, że Rest Client ma tabelę o nazwie Request Headers - tam ją umieść. –