Servlet Response直接返回JSON資料
阿新 • • 發佈:2020-12-28
技術標籤:servletservletresponsejsonjava
獲取列印輸出流
列印輸出流:response.getWriter()
返回的是 PrintWriter
可以通過 response.getWriter().write()
和response.getWriter().print()
響應資料給客戶端,如果前端沒有接收資料的位置,就會在瀏覽器上生成一個新的頁面來顯示內容。
區別:
- write():僅支援輸出字元型別資料,字元、字元陣列、字串等
- print():可以將各種型別(包括Object)的資料通過預設編碼轉換成bytes位元組形式,這些位元組都通過write(int c)方法被輸出
建立模擬
@Override
public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException e) throws IOException, ServletException {
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Cache-Control", "no-cache" );
response.setCharacterEncoding("UTF-8");
response.setContentType("application/json");
response.getWriter().println(JSONUtil.parse(CommonResult.forbidden(e.getMessage())));
response.getWriter().flush();
}
效果
如果沒有指定的接收方法,就回在新頁面展示。