Я использую Streamlabs API для обновления очков лояльности для пользователей.После выполнения ниже, точки не обновляются, и в блоке перехвата выдается ошибка.Единственный пример, приведенный для выполнения этого запроса - это запрос curl.(см. здесь ).Может быть, их пример неверен?
Я использую Javascript и модуль Request-Promise.Я успешно сделал запросы POST с этим модулем для Oauth с Twitch.Однако я не могу заставить этот пост работать с Streamlabs API, я попробовал несколько способов.Это тот же код, который я использовал для запроса POST к API Twitch, и он был успешным.Я не могу понять, почему это не работает для Streamlabs:
const options = {
access_token: streamlabsToken,
channel: TWITCH_CHANNEL,
users: 'users[' + username + ']=' + REFERRAL_POINTS
}
request.post(pointsAddEndpoint, { json: options })
.then((slResponse) => { // Then 2
if (slResponse.hasOwnProperty('message')) {
console.log('Streamlabs response: ' + slResponse.message);
}
res.end();
})
.catch(function (error) {
console.log('Error adding refer points: ' + error.message);
res.end();
});
Я уверен, что я просто форматирую что-то здесь не так, любой ввод?
ОБНОВЛЕНИЕ
Я получил запрос на работу.Параметры для 'users' не должны быть 'users = users [username] = 20 & users [username] = 30', это должны быть просто 'users [username] = 20 & users [username] = 30' (удалено 'users =').
Я сделал это в своем options
объекте так:
const options = {
access_token: streamlabsToken,
channel: TWITCH_CHANNEL
}
options['users[' + username + ']'] = REFERRAL_POINTS;
Однако это все еще не работает.Я знаю, что правильно устанавливаю параметр 'users', потому что я напечатал в журнал options['users[' + username + ']']
, и он дал мне правильный REFERRAL_POINTS.
На данный момент я думаю, что я просто наберу все этов виде строки.Как мне передать это в тело request.post
?