У меня проблема с методом генерации ответов изображений PNG.Ошибка 406 Не допускается при генерации ответа PNG
@RequestMapping(value = "/thumb/{id}.png", produces = "image/png")
@ResponseBody
public char[] thumb(@PathVariable UUID id)
{
// action logic here
return CatalogController.PLACEHOLDER_THUMB;
}
Однако я не могу получить доступ к этой акции - она выполнена правильно (я вижу логику эффектов в базе данных), но клиент получает 406 Не Приемлемое.
Вот как я имитировать запрос (то же самое происходит в Chrome и Internet Explorer):
$ wget "http://localhost:8080/thumb/13164e6b-fc0f-4c67-a7d3-e2c56224384b.png" -O - --header="Accept: image/png"
--2013-11-18 18:37:30-- http://localhost:8080/thumb/13164e6b-fc0f-4c67-a7d3-e2c56224384b.png
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:8080... connected.
HTTP request sent, awaiting response... 406 Not Acceptable
2013-11-18 18:37:30 ERROR 406: Not Acceptable.
Редактировать
Здесь более подробное описание отображается в браузере:
описания ресурс, идентифицированный этим запросом, способен генерировать ответы с характеристиками, неприемлемыми в соответствии с запросом «принять» заголовки().
Вы пытались добавить в свой запрос заголовок «Accept: image/png»? – EJK
Я считаю, что 406 означает, что заголовки принимающего запроса не применимы к тому, что производится в ответе. Возможно, вам придется обратиться к вашему запросу с просьбой отправить соответствующий заголовок принятия. К сожалению, я не знаю, как это сделать с помощью wget. Кроме того, я не вижу, где вы вообще устанавливаете тип mime в ответе. Вы должны установить это. – CodeChimp
Проверьте мою командную строку 'wget'. –