首页 > 解决方案 > 为什么我从 RestController 在 Angular/Postman 中得到 {"empty":false}?

问题描述

我有一个方法应该将 json 返回到前端,但我在客户端中得到的不是 json,而是 {"empty":false},如图所示。

在此处输入图像描述

我正在使用 spring-rest-controller 来连接使用 Angular 完成的前端和使用 Java 和 Spring 完成的后端。整个 Java 部分工作,并且调试,在返回时我有一个填充的 JSON,但它没有到达客户端。

@PostMapping("/users/login")
    @ResponseStatus(HttpStatus.FOUND)
    public ResponseEntity<Object>  login(@RequestBody LoginEntity user) throws ParseException, JSONException {

     HttpHeaders headers = new HttpHeaders();
     headers.add("Content-Type", "application/json; charset=utf-8");

    UserEntity serviceResult = this.userService.login(user);

    JSONObject jsonToClient = new JSONObject();

    if (serviceResult.getUserName() == null && serviceResult.getEmail()==null) {
         jsonToClient.put("user name", null);
        jsonToClient.put("email", null);
    } else if(serviceResult.getUserName() != null && serviceResult.getEmail()!=null) {

        UserToken userToken = new UserToken();

        String token = getJWTToken(user.getEmail());

        userToken.setUserName(serviceResult.getUserName());
        userToken.setEmail(serviceResult.getUserName());
        userToken.setToken(token);

        jsonToClient.put("user name", userToken.getUserName());
        jsonToClient.put("email", userToken.getEmail());
        jsonToClient.put("token", userToken.getToken());


    }

    return new ResponseEntity<Object>(jsonToClient, HttpStatus.OK); 
    }

在客户端控制台中,我正在观看:{"empty":false}

标签: javaspringrest

解决方案


推荐阅读