Пользовательский ответ для OAuthAuthorizationServer в OWIN

Мне нужно сгенерировать пользовательский ответ для генерации токена в OAuthAuthorizationServer

ответ по умолчанию такой

{
  "access_token": "***access_token***",
  "token_type": "bearer",
  "expires_in": 119,
  ".issued": "Mon, 31 Oct 2016 11:20:50 GMT",
  ".expires": "Mon, 31 Oct 2016 11:22:50 GMT"
}

Как я могу сгенерировать этот вывод вместо стандартного?

{
  "message": "Token Granted",
  "data": 
    {
      "Token": "***access_token***"
    },
  "messageCode": 200
}

person Kahbazi    schedule 31.10.2016    source источник


Ответы (1)


Этот вопрос похож на Как изменить тело ответа конечной точки токена с помощью Owin OAuth2 в Asp.Net Web API 2

Пожалуйста, посмотрите на мой ответ.

Кроме того, вы можете анализировать ответ json вместо работы со строкой, например:

public async Task Invoke(HttpContext context)
{
    ...
    // parse json
    var bodyJson = JObject.Parse(bodyString);

    // do something with json inner objects
    bodyJson = ...

    // update the memory stream
    var bytes = Encoding.UTF8.GetBytes(bodyJson.ToString());
    ...
}
person Pavel Safonov    schedule 11.05.2018