Почему я не получаю токен доступа и другие атрибуты в ответе Json

#c# #asp.net-web-api

#c# #asp.net-web-api

Вопрос:

Я только что прошел проверку подлинности JWT и попытался создать ее в своем тестовом проекте, я мог видеть, что он генерирует ответ, когда я выполняю пошаговую отладку, но в моем ответе Json я получаю несколько другой результат.

Не уверен, что я пропустил.

Мой пример кода ниже

Возвращаемые атрибуты

    public class UserWithToken : User
   {
     public string Access_Token { get; set; }
     public string Refresh_Token { get; set; }

    public UserWithToken(User user)
    {
        this.UserId = user.UserId;
        this.EmailId = user.EmailId;
        this.FirstName = user.FirstName;
        this.MiddleName = user.MiddleName;
        this.LastName = user.LastName;
    }
}
  

и вот мой веб-API

      [HttpGet]
     [AllowAnonymous]
    public UserWithToken AuthenticateUser(string email, string pwd)
    {
        //First Validate the User
        User appUser = new User();
        TokenManager tokenManager = new TokenManager();
        appUser = appUser.GetUserDetail(email, pwd);
        if (appUser != null)
        {
            UserWithToken userToken = new UserWithToken(appUser);
            string JsonToken = tokenManager.GenerateToken(appUser);
            userToken.Access_Token = JsonToken;
            userToken.Refresh_Token = "";
            return userToken;
        }

        return null;
    }
  

но я мог видеть, что он генерирует токен, и во время отладки я мог видеть, но при возврате в нем все по-другому. Я использую Postman для отладки

{ «$id»: «1», «userId»: 1, «EmailId»: «abc@gmail.com «, «FirstName»: «Mohan», «MiddleName»: «», «LastName»: «Chandra», «EntityKey»: null }

что такое $ id, я не знаю, и почему он не показывает атрибуты access_token и refresh_token.

Заранее спасибо.

Комментарии:

1. Вы установили точку останова и выполнили пошаговый код, чтобы увидеть значения?

2. Да, получаю токен, и когда я вижу в quick watch, он показывает access_token, но, наконец, в ответ в Postman он не отображается. он отображается здесь, под строкой, при отладке строки JsonToken = tokenManager. generateToken (AppUser); UserToken. Access_Token = JsonToken;

3. Возможно, вы используете json ignore или что-то подобное в своей модели или объектах DTO.

4. Что такое User класс?