acherkashin / yandex-music-open-api

Swagger документация для Yandex Music.
https://www.cherkashin.dev/yandex-music-open-api/
53 stars 4 forks source link

Не работает /queues #22

Closed KailHet closed 1 year ago

KailHet commented 1 year ago

Параметр X-Yandex-Music-Device указан. Взят с HTTP Analyzer. Параметр Authorization указан. Взят вручную. Пишу на JavaScript Используемый модуль: yandex-music-client

Полная ошибка: `D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\ApiError.js:22 var _this = _super.call(this, message) || this; ^

Error [ApiError]: Bad Request at new ApiError (D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\ApiError.js:22:28) at catchErrorCodes (D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\request.js:286:15) at D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\request.js:325:21 at step (D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\request.js:44:23) at Object.next (D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\request.js:25:53) at fulfilled (D:\bots\tg_samozanyat\node_modules\yandex-music-client\core\request.js:16:58) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) { url: 'https://api.music.yandex.net:443/queues', status: 400, statusText: 'Bad Request', body: { result: { timestamp: '2023-03-07T13:51:40.318+00:00', status: 400, error: 'Bad Request', path: '/queues' }, invocationInfo: { hostname: 'j5rymayfjkix4d6j.vla.yp-c.yandex.net', 'req-id': '1678197100314205-3941937234505243174', 'app-name': 'music-play-queue', 'exec-duration-millis': 0 } }, request: { method: 'GET', url: '/queues', headers: { 'X-Yandex-Music-Device': undefined } } }

Node.js v18.14.2`

acherkashin commented 1 year ago

@KailHet можешь приложить сам код?

KailHet commented 1 year ago

const { YandexMusicClient } = require('yandex-music-client/YandexMusicClient')

async function main() { const client = new YandexMusicClient({ BASE: "https://api.music.yandex.net:443", HEADERS: { 'Authorization': 'OAuth TOKEN', // specify 'en' to receive data in English 'Accept-Language': 'ru', 'X-Yandex-Music-Device': 'os=Windows.Desktop; os_version=10.0.22621.525; manufacturer=Micro-Star International Co., Ltd.; model=MS-7C52; clid=WindowsPhone; device_id=030002700300DA83030032DF050078170500271B0500F41C0500D77905009BB806000100040034670100C20D0200CA3A090054B0; uuid=generated-by-music-a6bbb7be-8275-4722-a9e2-d09b25a6ddd0' }, });

console.log(await client.default.getQueues()) } main()

acherkashin commented 1 year ago

@KailHet ты немного неправильно используешь метод получения очередей. Заголовок устройства нужно передавать в качестве единственного параметра. Добавил пример получения текущего трека.

https://github.com/acherkashin/yandex-music-open-api/blob/main/lib/examples/CurrentTrack.js

acherkashin commented 1 year ago

@KailHet немного поправил типы и добавил метод получения очереди по идентификатору. Поэтому используй версию 0.3.0.