Как получить последнюю версию patron_status из patreon api? - PullRequest
0 голосов
/ 08 января 2020

Я работаю над приложением Meteor, которое является фреймворком поверх nodeJs. До сих пор я мог получить токен типа Bearer, а область действия - «identity identity [email] identity.memberships».

Страница моего создателя patreon: https://www.patreon.com/MassEducationWeapon

С помощью этого токена я вызываю следующую конечную точку: https://www.patreon.com/api/oauth2/api/current_user

Верно ли следующее? Предполагая, что у меня только один уровень:

const url = 'https://www.patreon.com/api/oauth2/api/current_user';
const options = {
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Authorization': 'Bearer ' + access_token
  }
};
HTTP.call('GET', url, options, function(error, response) {
  if (!error) {
    const patreonUser = JSON.parse(response.content);
    return Meteor.users.update({_id: userId},
      {
        $set: {
          patronStatus: patreonUser.included[0].attributes.patron_status || null,
          patreonLastChargeDate: patreonUser.included[0].attributes.last_charge_date || null,
          patreonLastChargeStatus: patreonUser.included[0].attributes.last_charge_status || null
        }
      });
  }
});

Я имею в виду, будет ли patreonUser.included [0] .attributes.patron_status 'active_patron', если пользователь заплатил?

Я думаю, У меня нет возможности проверить, пока я не получу свой первый патреон. Я предполагаю, что я не получаю следующие 3 поля в ответе API, потому что они имеют значение null: patron_status last_charge_date last_charge_status Получу ли я эти поля для клиентов, которые фактически платят с этим текущим кодом, или я неправильно выбираю значение patron_status?

...