У меня возникла проблема при отправке POST на ресурс, который защищен базовой аутентификацией доступа. Вот код, я использую @mikeal's request:POST на ресурс, защищенный базовым доступом,
request.post({
uri: "http://user:[email protected]/resource",
json: {
"id": "1",
"par1": "a",
"par2": "b"
}
}, function (error, response, body) {
console.log(error);
console.log(response);
console.log(body);
});
У меня { [Error: Parse Error] bytesParsed: 0 }
по ошибке и undefined
в обоих ответ и тела. Если я удалю часть «user: password», я правильно получу 401 HTTP Basic: Access denied.
Знаете ли вы, есть ли способ POST JSON для защищенного ресурса, как в моем случае? Если нет, я верю, что мне придется идти по модулю http-модулей, но я оставляю это как окончательный ресурс, поскольку он намного более подробный.
UPDATE: Чтобы это было как можно проще, я переместил этот файл в новый каталог и сделал npm install request
. Проблема исчезла, я проверил, откуда пришел byteParsed
, и нашел, что он находится в «грозном», который требуется экспресс, который у меня был в каталоге, где я запускал этот тест. Немного смущает прямо сейчас.
Спасибо за ваш ответ; Я обновил свой вопрос, так как обнаружил, что перемещение кода в чистый каталог «решает» проблему. Я сказал: «решает», потому что мне нужно это в предыдущей папке, я думаю, что у меня есть проблема несовместимости. Я смотрю на то, что вы связали, наверняка кажется чем-то возможным. –
Спасибо! Я решил это сделать, как вы предложили: D Странно, что это то, что я использую в библиотеке, я почти копировал решение оттуда, я рассмотрю его сегодня вечером. Еще раз спасибо. –