Я наконец нашел решение.Проблема заключается в использовании WebAuthenticationOptions.None
при использовании этого параметра, он отлично работает на настольных компьютерах и поверхностях Windows 10, но этот параметр не работает правильно для Xbox One.он не возвращает код авторизации.
Но в строке заголовка браузера всегда есть этот код, и для его получения необходимо использовать WebAuthenticationOptions.UseTitle
.Однажды использованный ответ имеет элемент с именем "code
", и вы можете просто проанализировать его, как показано ниже
var queryStringParams = System.Web.HttpUtility.ParseQueryString(receivedData.ResponseData.Substring(receivedData.ResponseData);
string code= queryStringParams["code"];
При использовании WebAuthenticationOptions.None
в ответе не указано queryStringcalled "code
", а как "approvalCode
",есть и эта разница.Я не знаю почему.Но в любом случае WebAuthenticationOptions.UseTitle
можно использовать для всех устройств UWP.Я проверил на всех и работает как шарм