Я нахожусь в процессе создания веб-приложения, которое позволит пользователям создавать плейлисты Spotify песен, которые они твитнули. Это включает в себя использование как Spotify API (через оболочку spotipy), так и Twitter API (через оболочку Twython). До сих пор мне удавалось заставить неявный поток кода предоставления / авторизации работать для обоих APIS, но я пытаюсь выяснить, каков наилучший способ подтверждения того, что пользователь в веб-приложении завершил авторизацию своих учетных записей Twitter и Spotify, прежде чем нажатькнопка, которая будет генерировать список воспроизведения.
Я немного застрял, потому что кажется, что нельзя отключить кнопки с атрибутом href. Кроме того, я попытался создать функции JavaScript, которые включают кнопку «Build Playlist», но это тоже не работает. Ниже приведен HTML-код веб-страницы, на которой пользователь будет находиться при аутентификации своих учетных записей:
<!DOCTYPE html>
<html>
<head>
<title> Your Twitter Playlist </title>
</head>
<body>
<h1>Authentication</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</p>
</body>
<button type="button" id="home">
<a href="http://127.0.0.1:5000/"> Home </a>
</button>
<button type="button" id="auth_twitter" data-twit-clickToggle="false" onclick=clickToggleTwitter()>
<a href="http://127.0.0.1:5000/auth/twitter"> Twitter </a>
</button>
<button type="button" id="auth_spotify" data-spot-clickToggle="false" onclick=clickToggleSpotify()>
<a href="http://127.0.0.1:5000/auth/spotify"> Spotify </a>
</button>
<button type="button" id="build_playlist" disabled="disabled" onclick=enableBuildButton()>
Create Playlist!
</button>
<!-- ********************* SCRIPTS ************************** -->
<!-- Enable Build Playlist Button -->
<script>
function enableBuildButton() {
var spotify_toggle = document.getElementById("auth_spotify").getAttribute("data-spot-clickToggle");
var twitter_toggle = document.getElementById("auth_twitter").getAttribute("data-twit-clickToggle");
if spotify_toggle and twitter_toggle == "true":
document.getElementById("build_playlist").disabled = false;
}
</script>
<!-- Twitter Button Toggle -->
<script>
function clickToggleTwitter() {
document.getElementById("auth_twitter").setAttribute("data-twit-clickToggle") = "true";
}
</script>
<!-- Spotify Button Toggle -->
<script>
function clickToggleSpotify() {
document.getElementById("auth_spotify").setAttribute("data-spot-clickToggle") = "true";
}
</script>
</html>
Наверное, мой вопрос: как следует подходить к решению этой проблемы? У меня нет опыта в веб-разработке, поэтому любые полезные ресурсы будут с благодарностью :)