代码之家  ›  专栏  ›  技术社区  ›  Kima321

ResponseEntity的回答不正确<String>

  •  0
  • Kima321  · 技术社区  · 6 年前

    @Controller
    @RequestMapping("/logout")
    public class AuthenticationController
    {
        public static final String LOGOUTED = "logouted";
    
        @Resource(name = "requireHardLoginEvaluator")
        private RequireHardLoginEvaluator requireHardLoginEvaluator;
    
        @RequestMapping(value = "/status", method = RequestMethod.GET)
        public ResponseEntity<String> status(final HttpServletRequest request, final HttpServletResponse response)
        {
            if (!requireHardLoginEvaluator.evaluate(request, response))
            {
                return new ResponseEntity<String>(LOGOUTED, HttpStatus.OK);
            }
    
            return new ResponseEntity<String>(HttpStatus.UNAUTHORIZED);
        }
    

    当我调试它时,变量 new ResponseEntity<String>(AUTHENTICATED, HttpStatus.OK) <200 OK,authenticated,{}>

    我的问题是:这是什么原因 authenticated 转换为带有双引号的字符串,如 "authenticated" 在内部 ResponseEntity 例子

    0 回复  |  直到 6 年前
        1
  •  1
  •   trungitdn92    6 年前

    因为返回的类型是String。具有您定义的类型的弹簧复位 ResponseEntity<String> 在这里您可以使用set返回任何类型,如下所示: ResponseEntity<?>