HTTP-клиент на основе NodeJS: как аутентифицировать запрос?

Это код, который я должен сделать для простого запроса GET:

var options = {
    host: 'localhost',
    port: 8000,
    path: '/restricted'
};

request = http.get(options, function(res){
    var body = "";
    res.on('data', function(data) {
        body += data;
    });
    res.on('end', function() {
        console.log(body);
    })
    res.on('error', function(e) {
        console.log("Got error: " + e.message);
    });
});

Но этот путь "/ ограничен" требует простая базовая HTTP-аутентификация. Как мне добавить учетные данные для аутентификации? Я не смог найти ничего, связанного с базовой HTTP-аутентификацией, в руководстве NodeJS . Заранее спасибо.

29
задан Paul Sonier 2 August 2011 в 20:46
поделиться

2 ответа

В более новой версии вы также можете просто добавить параметр auth (в формате имя пользователя: пароль, без кодировки) к вашим опциям:

var options = {
    host: 'localhost',
    port: 8000,
    path: '/restricted',
    auth: username + ':' + password
};

request = http.get(options, function(res){
    //...
});

(ПРИМЕЧАНИЕ: проверено на v0.10.3 )

22
ответ дан 28 November 2019 в 01:09
поделиться

Здесь - некоторая информация об базовой аутентификации HTTP.

-3
ответ дан 28 November 2019 в 01:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: