Доступ к именам всех файлов в репозитории github с помощью Meteor


Как следует из названия, я пишу веб-приложение в Meteor и пытаюсь получить доступ к именам всех файлов в репозитории github. У меня есть настроенный узел GitHub api wrapper (фактический api, который он обертывает, находится в https://github.com/mikedeboer/node-github ), и я смог успешно выполнить некоторые другие вызовы api github (а именно github.РЕПО.способность и gethub.пользователь.getFollowingFromUser). По какой-то причине, однако, когда я пытаюсь использовать github.РЕПО.getContent я получаю ошибку 404 независимо от того, что я передаю в качестве имени пользователя или РЕПО.

Итак, это работает:

 github.user.getFollowingFromUser(
     {
       user: "ndhoule" 
     },
     function(err, res) {
     console.log(JSON.stringify(res));
     });

Но это не так:

 github.repos.getContent(
     {
       user: "ndhoule",
       repo: "meteor-github-api"
     }, 
     function(err, res){console.log(JSON.stringify(res))
   });

Вот ошибка, которую он производит:

I20141029-13:46:01.875(-5)? [error] { [Error: {"message":"Not    
Found","documentation_url":"https://developer.github.com/v3"}]
I20141029-13:46:01.876(-5)? [error]   message: '{"message":"Not    
Found","documentation_url":"https://developer.github.com/v3"}',
I20141029-13:46:01.877(-5)? [error]   code: 404 } null ndhoule
I20141029-13:46:01.877(-5)? undefined

Это происходит независимо от того, какое имя пользователя я подключаю, поэтому я предполагаю, что я как-то неправильно использую метод getContent. Если кто-нибудь может выяснить, в чем моя ошибка (или, возможно, предложить другой способ получения имен файлов из РЕПО в Meteor), я буду очень признателен за помощь.

Править: Я попытался указать путь (хотя это необязательный параметр), и я получил немного другой результат.

Пересмотренный код:

github.repos.getContent(
     {
       user: "ndhoule",
       repo: "meteor-github-api"
       path: "./"
     }, 
     function(err, res){console.log(JSON.stringify(res))
   });

И теперь у меня есть только этот вывод в консоли:

{"meta":{"x-ratelimit-limit":"60","x-ratelimit-remaining":"59"}}
1 2

1 ответ:

Я попробовал ваш код и получаю содержимое файлов для РЕПО

Введите описание изображения здесь

Из этого выпуска https://github.com/mikedeboer/node-github/issues/137 я установил путь к emprty

Мой код

client.js

        Meteor.call("repocontent",uname,repoName,function(e,r){
          console.log(r);
        });

Сервер.js в методе сервера

 'repocontent':function(uname,repoName){
        var reposcontent=Async.runSync(function(done){
           github.repos.getContent({user:uname,repo:repoName,path: ""},function(err,data){
              done(null,data) ;
           }); 
        });
        return reposcontent;
    },