springmvc中,關於context-type的text/plain說明
- 當方法上加
@ResponseBody
註解的時候,返回的數據的context-type'
一定是application/json;
類型的,即使指定了@requestMapping
中的produces
屬性的值也無效。
- 如果
context-type'
希望是指定類型,那麼請參考一下寫法
@RequestMapping(value = "resolveData")
@ResponseBody
public void resolveData(@ModelAttribute ZncdModel model,HttpServletResponse response) throws IOException {
response.setContentType("text/plain;charset=UTF-8");//指定類型
Map<String, String> result = new HashMap<>();
result.put("eventid", JFunction.getUUID_16());
result.put("status", "OK");
response.getWriter().write(result.toString());//用流直接輸出
}
- 當請求體的
context-type
是text/plain
時,接受參數的方法如下:
// 接收請求數據
BufferedReader reader = request.getReader();
char[] buf = new char[512];
int len = 0;
StringBuffer contentBuffer = new StringBuffer();
while ((len = reader.read(buf)) != -1) {
contentBuffer.append(buf, 0, len);
}
content = contentBuffer.toString();