【问题标题】:(Reddit API) How to get a list of subreddits user is subscribed to, using snoowrap?(Reddit API)如何使用 snoowrap 获取用户订阅的 subreddits 列表?
【发布时间】:2018-08-20 06:14:12
【问题描述】:

所以我正在使用 snoowrap 编写一个 Chrome 扩展程序,它获取用户订阅的子版块列表,并在不同的帐户上订阅它们。

我目前正在尝试获取子版块列表,但不知道该怎么做。我试过简单地从https://www.reddit.com/subreddits/mine.json 获取 JSON,它返回一个空对象(可能是因为没有身份验证),我不知道如何通过 snoowrap 来做到这一点。我查看了文档,但找不到它的选项。

我的代码:

document.addEventListener('DOMContentLoaded', function() {

  var login = document.getElementById('login');
  login.addEventListener('click', function() {
    const r = new snoowrap({
      userAgent: '???',
      clientId: '<id>',
      clientSecret: '<clientsecret>',
      username: '<username-here>',
      password: '<password-here>'
    });

    r.getHot().map(post => post.title).then(console.log);
  });

  var getSubs = document.getElementById('get-subs');
  getSubs.addEventListener('click', function() {

    fetch('https://www.reddit.com/subreddits/mine.json')
      .then(function(data) {
          console.log(JSON.stringify(data));
      })
      .catch(function(error) {
        console.log('error');
      });

  });
});

不知道还有什么方法可以尝试。有人有建议吗?理想情况下,我想使用 snoowrap。

【问题讨论】:

    标签: javascript google-chrome-extension reddit


    【解决方案1】:

    当使用 snoowrap 作为 API 包装器时,在连接到 api 之后:

    const r = new snoowrap({...});
    

    它们提供了获取您自己订阅的子版块的功能:

    r.getSubscriptions();
    

    这将返回一个Listing 对象,您可以像使用数组一样使用它。

    【讨论】:

      猜你喜欢
      • 2014-12-02
      • 2022-01-20
      • 2018-11-13
      • 2020-02-10
      • 2021-02-01
      • 2017-04-07
      • 1970-01-01
      • 1970-01-01
      • 2020-03-03
      相关资源
      最近更新 更多