Spotify Web Playback Ошибка SDK (post https://cpapi.spotify.com/v1/client/170e8fd3f7fe5ed17f77f8939c19664dcfabd80b/eventJavascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Anonymous
 Spotify Web Playback Ошибка SDK (post https://cpapi.spotify.com/v1/client/170e8fd3f7fe5ed17f77f8939c19664dcfabd80b/event

Сообщение Anonymous »

Некоторый контекст:
Я общаюсь с веб -API/воспроизведением Spotify в соответствии с кодом авторизации с помощью PKCE Flow. Я успешно успешно (обновление мониторинга моего приложения и предоставление соответствующих областей). Я также успешно получил функцию access_token и represh_token. Я пробовал несколько API (т. Е. Получить доступные устройства, успешно получить трек), чтобы просто назвать несколько. Я сначала проверил, неправильно ли я инициализировал экземпляр веб -воспроизведения SDK, или моя функция воспроизведения передачи вызывает ошибку. Сначала казалось, что я инициализировал его неправильно, но, включив воспроизведение трансфера, чтобы воспроизвести немедленно, песня успешно играет в моем браузере (мое приложение Spotify также отражает, что трек играет на веб -плеере). Тем не менее, я все еще получаю ту же ошибку 404 (не найдена). Затем я проверил свою функцию воспроизведения передачи, если я получу ту же ошибку при передаче воспроизведения на другое устройство (то есть мой рабочий стол или смартфон). Функция воспроизведения передачи работает, но в консоли нет ошибок. На данный момент я не понимаю, в чем проблема, так как я проверил все, о чем я могу думать. Я также попытался искать, если у других людей была что -то подобное или эта конкретная ошибка, но нет такой записи (есть 2 сообщения на форумах сообщества Dev Spotify, без полезных ответов/решений ...)
Я предоставил некоторые из своих кодов ниже, пожалуйста, дайте мне знать, если требуется дальнейший контекст. Я застрял по этому вопросу в течение 2 дней и пробовал несколько различных реализаций/проектов без успеха.
Я подтвердил, что все соответствующие переменные хранятся правильно. Как упоминалось ранее, я попытался перенести другое устройство (изменение curdeviceid в моей функции TransferPlayback на другое активное устройство) и был успешным. И снова, хотя я получаю ошибку при передаче воспроизведения на мой веб -плеер, он все еще успешно играет на треке. Я исключил какой -то код из моего контекста (так как он так долго), но включил всю соответствующую информацию.const transferPlayback = async (curDeviceId) => {
const token = getAccessToken; //Access token received from auth
if (player){
await player.activateElement();
}
const response = await fetch("https://api.spotify.com/v1/me/player", {
method: "PUT",
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${token}`
},
body: JSON.stringify({
device_ids: [curDeviceId],
play: true,
}),
});

const data = await response;
console.log(data);
}
useEffect(() => {
if(!getAccessToken) return;
const script = document.createElement("script");
script.src = "https://sdk.scdn.co/spotify-player.js";
script.async = true;

document.body.appendChild(script);

window.onSpotifyWebPlaybackSDKReady = () => {

const player = new window.Spotify.Player({
name: 'DappMyMusicWebPlayer',
getOAuthToken: cb => { cb(getAccessToken); },
volume: 0.5
});

setPlayer(player);

player.addListener('ready', ({ device_id }) => {
console.log('Ready with Device ID', device_id);
setDeviceId(device_id);
setIsPlayerReady(true);
});

player.addListener('not_ready', ({ device_id }) => {
console.log('Device ID has gone offline', device_id);
setIsPlayerReady(false);
});

player.addListener("initialization_error", ({ message }) => {
console.error("Initialization Error:", message);
});

player.addListener("authentication_error", ({ message }) => {
console.error("Authentication Error:", message);
});

player.addListener("account_error", ({ message }) => {
console.error("Account Error:", message);
});

player.addListener("playback_error", ({ message }) => {
console.error("Playback Error:", message);
});

player.connect();
console.log(player);
};
}, [getAccessToken]);
< /code>
webplaybackcomponent.jsx
import React, { useState, useEffect, useContext } from 'react';
import { DappMyMusicContext } from '../context/DappMyMusicContext';

const WebPlayback = () => {
const {getAccessToken, transferPlayback, isPlayerReady, deviceId} = useContext(DappMyMusicContext);
console.log("isPlayerReady: " + isPlayerReady + "\ndeviceId: " + deviceId);
const checkDevices = async () => {
const token = localStorage.getItem("access_token");

const response = await fetch("https://api.spotify.com/v1/me/player/devices", {
method: "GET",
headers: {
"Authorization": `Bearer ${token}`
}
});

const data = await response.json();
console.log("🎵 Available Devices:", data);
};

const checkCurrentDevice = async () => {
const token = localStorage.getItem("access_token");

const response = await fetch("https://api.spotify.com/v1/me/player", {
method: "GET",
headers: {
"Authorization": `Bearer ${token}`,
},
});

const data = await response;
console.log("Current playback device:", data);
};

return (



transferPlayback(deviceId)}>Play

List of Devices

Current Device



);
}

export default WebPlayback;
< /code>
Я пробовал разные подходы и проекты при реализации функции Spotify Web Plagebace в моем веб -приложении. Я также попытался найти эту ошибку или другие ошибки при внедрении веб -плеера, но не нашел ничего релевантного для моей дилеммы.

Подробнее здесь: https://stackoverflow.com/questions/794 ... ent-170e8f
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»