クエリ文字列のパラメーターを使用してGrails 1.3.7にPOST を送信するという問題がありました。format=json
GrailswithFormatのドキュメント - http://grails.org/doc/1.3.7/ref/Controllers/withFormat.htmlに基づいて、このパラメーターにより、クロージャーが内部でwithFormatクロージャーを実行する必要がありjsonます。
すなわち:
withFormat {
json {
// this logic should be executed if the query string has format=json
}
}
この場合、コントローラ メソッドは複数のコンテンツ タイプを提供していました。フォームに対してのみ実行する必要があるロジックがいくつかあったため、withFormat次のようにクロージャが追加されました。
withFormat {
form {
// form specific logic
}
}
jsonこれが json リクエストである場合、実行する対応するロジックがなかったため、ブロックがないことに注意してください。format=json問題は、クエリ文字列を送信したリクエストでもフォーム ブロックが実行されていたことです。
なぜこれが起こるのでしょうか?