Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="signinRequest"></param>
        /// <returns></returns>
        public async Task <string> AcquireGoogleAccessToken(ExternalSigninRequest signinRequest)
        {
            var googleUserData = await _googleUserServiceClient.WhoAmIByCodeAsync(signinRequest.Code);

            var userData       = (await _userRepository.GetAsync(user => user.EmailId == googleUserData.Email)).FirstOrDefault();
            var omilosUserData = await RegisterOrUpdateUserDataAsync(userData, googleUserData);

            var apiModel = _mapper.Map <User>(omilosUserData);

            return(_tokenProvider.AcquireToken(apiModel));
        }
Пример #2
0
 public async Task <IActionResult> GoogleSignin([FromBody] ExternalSigninRequest signinRequest)
 {
     return(await ExecuteWithExceptionHandlingAsync <string, SigninResponse>(() => _accountProvider.AcquireGoogleAccessToken(signinRequest)));
 }