我在控制器上设置了以下注释,但它无法接收AWS SNS消息,
@RequestMapping(method = RequestMethod.POST, headers = "Content-Type=text/plain; charset=UTF-8")
SNS邮件样本为here
我总是得到 415不支持的媒体类型。看起来我在这里遗漏了一些小事。
答案 0 :(得分:2)
这对我有用:
请求正文实际上是一个JSON字符串(text / plain),因此您应该将其作为字符串接受,然后将其解析为可用的结构。
这是一个例子。
@RequestMapping(method = RequestMethod.POST, consumes = "text/plain")
void subscribe(@RequestBody String paramsString) {
Map<String, String> params = new Gson().fromJson(paramsString, new
HashMap<String, String>().getClass());
// Use params..
}