public async Task <IActionResult> FacebookLogin([FromBody] FacebookLoginViewModel info) { #region Request parameters validation // Information hasn't been initialized. if (info == null) { info = new FacebookLoginViewModel(); TryValidateModel(info); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } #endregion #region Facebook login & token generate // Do facebook login. var user = await _userDomain.FacebookLoginAsync(info); // Initialize access token. var jsonWebToken = _userDomain.GenerateJwt(user); #endregion return(Ok(jsonWebToken)); }