получение пустого ответа angular 9 - PullRequest
0 голосов
/ 04 августа 2020

Я создал модуль входа, используя angular 9. Когда я пытаюсь войти в систему с правильными учетными данными, я получил ответ 200 с json, я проверил его в элементе проверки. Но когда я отлаживаю службу angular, ответ пуст. пожалуйста, помогите мне, почему это происходит?

login.service.ts

   load(userLogin : UserLogin): Promise<any> {
    return new Promise((resolve, reject) => {
       this._http
        .post('login',userLogin)
        .pipe(
          catchError(res => {
            resolve();
            return throwError(res);
          })
        )
        .subscribe(
         (res: any) => {
            console.log('result', res);
          },
          () => {
            reject();
          },
          () => {
            resolve();
          }
        );
    });
  }

LoginResource. java

  @PostMapping
  public Map<String, Object> login(@RequestBody @Validated LoginDto loginDto) throws IOException {
    log.info("=>Login POST");
    UsernamePasswordAuthenticationToken authReq =
        new UsernamePasswordAuthenticationToken(loginDto.getEmail(), loginDto.getPassword());
    Authentication auth = authenticationManager.authenticate(authReq);
    SecurityContextHolder.getContext().setAuthentication(auth);
    String jwt = jwtUtils.generateJwtToken(auth);
    Registration userDetails = (Registration) auth.getPrincipal();

    List<String> roles =
        userDetails.getRoles().stream()
            .map(Role::getPrivileges)
            .flatMap(Collection::stream)
            .map(Privilege::getName)
            .collect(Collectors.toList());

    return new HashMap<String, Object>() {
          {
            put("token", jwt);
            put("id", userDetails.getId());
            put("username", userDetails.getUserName());
            put("roles", roles);
          }
        };
  }
...