2014-01-27 5 views
13

Я пытаюсь запустить этот код, но получаю эту ошибку:Запрос запрещен при доступе к GitHub API по программе Node.js

Request forbidden by administrative rules, make sure your request has a User-Agent header

var https = require("https"); 
var username = 'jquery'; 

var options = { 
host: 'api.github.com', 
path: '/users/' + username + '/repos', 
method: 'GET' 
}; 

var request = https.request(options, function(response){ 
var body = ''; 
response.on("data", function(chunk){ 
    body += chunk.toString('utf8'); 
}); 

response.on("end", function(){ 
    console.log("Body: ", body); 
    }); 
}); 

request.end(); 

ответ

21

Ваш options объект не имеет опцию headers, описывая user-agent , Попробуйте это:

var options = { 
    host: 'api.github.com', 
    path: '/users/' + username + '/repos', 
    method: 'GET', 
    headers: {'user-agent': 'node.js'} 
}; 
+0

Сейчас я получаю: - "сообщение": "Not Found", "documentation_url": "http://developer.github.com/v3" – Nicky

+1

Я попробовал один и тот же код вы опубликовали и просто включили заголовки. Это сработало для меня. Я запускаю Node.js на компьютере под управлением Windows 7. Но «Не найден» означает, что, по крайней мере, вы делаете запрос. –

+0

Извини, мой плохой !! Я изменил значение имени пользователя на имя пользователя с нулевым репозитором Спасибо – Nicky

Смежные вопросы