Grails Filters を使用して、特定の一連のコントローラーの応答にカスタム HTTP ヘッダーを追加しようとしています。
class ApiFilters {
def filters = {
xwingFilter(uri:'/api/**') {
after = {
response.setHeader('X-Wing', 'foo')
}
}
}
}
コントローラーがビューまたはテキストをレンダリングする場合、ヘッダーが応答に追加されます。コントローラーが「JSON としてレンダリング」を使用する場合、ヘッダーは追加されません。JSON コンバーターが出力ストリームを閉じて、すぐに送信しているようです。そうですか?
Grails インターセプターを使用することもできましたが、複数のコントローラーで複製する必要がありました。どうすればこれを達成できるかについてのアイデアはありますか?