Итак, я создаю приложение, используя asp.net mvc5. Я использую Owin.Security.Providers.BattleNet
для входа в систему моих пользователей только через внешние логины. Это отлично работает.
Однако, чтобы использовать любые вызовы API с помощью Battlenet, мне нужен «код авторизации», который предоставляется моему приложению, когда пользователь вошел в систему с помощью Battlenet. Я сейчас использую стандартную настройку, ничего особенного:
Startup.Auth.cs
app.UseBattleNetAuthentication(new BattleNetAuthenticationOptions()
{
ClientId = "<><><><><><><><>",
ClientSecret = "<><><><><><><><>"
});
После того, как Battlenet возвращается в мое приложение (на https://localhost:44367/signin-battlenet),, пользователь входит в свою учетную запись, но я никогда не вижу код авторизации.
На некоторых из моих страниц я хотел бы получить некоторые фотографии и данные персонажей из API Battlenet. Для этого мне нужно сгенерировать токен, но для этого мне нужен код авторизации, который был возвращен при первоначальном входе пользователя в систему.
Руководство Battlenet по этому состоянию
Как только игрок предоставит авторизацию, они будут направлены обратно
на сайт, указанный в redirect_uri
вместе с запросом о состоянии
параметр и параметр запроса, называемый кодом. Это авторизация
код, который представляет пользовательское соглашение, чтобы позволить вам данные. Заметка,
тем не менее, пользователи могут точно настроить, какие данные они хотят видеть для вас,
поэтому авторизация может не охватывать все области, которые вы
просил. Вы должны проанализировать этот токен и подготовить запросить доступ
токены от него.
Я огромный новичок в веб-разработке, поэтому я, вероятно, упускаю что-то очевидное.