예제 #1
0
        public async Task <IActionResult> ExchangeAcessToken([FromBody] ExchangeAcessTokenRequestModel token)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Invalid request body"));
            }

            try
            {
                ApplicationUser user = await _userManager.FindByIdAsync(User.FindFirstValue("Id"));

                var longAccessTokenResponse = await _facebookService.GetLonglivedAccessToken(token.AccessToken);

                var facebookdata = await _userManager.UpdateFacebookAccessTokenAsync(user.Id, longAccessTokenResponse.AccessToken);

                return(Ok(facebookdata.AccessToken));
            }
            catch (Exception err)
            {
                return(BadRequest(err.Message));
            }
        }