Как отправить адрес электронной почты в фейсбуке? - PullRequest
0 голосов
/ 26 марта 2019

Моё приложение весенней загрузки выдает исключение, потому что параметр запроса электронной почты является пустой строкой, Facebook не отправляет адрес электронной почты пользователя, потому что пользователь не дает разрешения. Какова наилучшая практика / способ решения этой проблемы? Мой код на данный момент:

@PostMapping("/user/facebook")
    public ResponseEntity<?> RegOrAuthUserWithFacebookToken(@Valid @RequestBody FacebookLoginRequest fbReq, Locale locale) {
        String email = userFacade.createOrUpdateFacebookUser(fbReq, locale);
        Authentication authentication = authenticationManager
                .authenticate(new FacebookAuthenticationToken(email, fbReq.getAccessToken()));
        SecurityContextHolder.getContext().setAuthentication(authentication);
        return ResponseEntity.ok()
                .body(new ApiResponse(new JwtAuthenticationResponse(tokenProvider.generateToken(authentication), UserRole.ROLE_USER.name())));
    }
...