Cordova - Всегда получаю ошибку «auth_failed» с Spotify OAuth api - PullRequest
0 голосов
/ 12 апреля 2019

Я пишу приложение Cordova, которое подключается к учетной записи пользователя Spotify и воспроизводит музыку, для этого я использую 3 плагина:

  • cordova-spotify-oauth: для подключения к учетной записи spotify
  • cordova-plugin-customurlscheme: для URL-адреса обратного вызова (работает с spotify api)
  • cordova-plugin-whitelist: для разрешения доступа к моей заказной схеме

Я использую следующий код:

const config = {
                        clientId: "<Hiding clientId>",
                        redirectUrl: "apiapp://localhost",
                        scopes: ["user-read-email"],
                        tokenExchangeUrl: "apiapp://localhost",
                        tokenRefreshUrl: "apiapp://localhost",
                    };
                    cordova.plugins.spotifyAuth.authorize(config)
                    .then(({ accessToken, expiresAt }) => {
                        alert("a: "+accessToken);
                        alert("b: "+accessToken);
                    })
                    .catch(error => {
                        alert(JSON.stringify(error));
                    });

И это мой config.xml (для плагина белого списка):

<?xml version='1.0' encoding='utf-8'?>
<widget id="fr.apiapp.api" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>ApiApp</name>
    <description>
        Api for spotify, SoundCloud et deezer
    </description>
    <author email="dev@cordova.apache.org" href="http://cordova.io">
        Someone
    </author>
    <content src="index.html" />
    <access origin="*" />
    <allow-navigation href="*" />
    <allow-intent href="*" />
    <plugin name="LaunchMyApp" value="nl.xservices.plugins.LaunchMyApp"/>
</widget>

В моем package.json у меня есть это:

"cordova-plugin-customurlscheme":{"URL_SCHEME":"apiapp","ANDROID_SCHEME":"apiapp","ANDROID_HOST":"localhost","ANDROID_PATHPREFIX":"/"}

И я импортировал LaunchMyApp.js в свой индекс, как сказано в файле readme.

Это всегда возвращает мне эту ошибку:

{"name":"auth_failed"}

Заранее спасибо;)

...