Если у вас Node.js 4.4+, посмотрите на reqclient , он позволяет вам совершать звонки и регистрировать запросы в стиле cURL , так что вы можете легко проверить и воспроизводить звонки вне приложения.
Возвращает Обещание объектов вместо передачи простых обратных вызовов, так что вы можете обработать результат более "fashion" способом, цепочкой результата легко, и обрабатывать ошибки стандартным способом. Также удаляет множество стандартных конфигураций для каждого запроса: базовый URL-адрес, время ожидания, формат содержимого, заголовки по умолчанию, параметры и привязку запроса в URL-адресе, а также основные функции кэша.
Это пример того, как его инициализировать, выполнить вызов и зарегистрировать операцию в стиле curl :
var RequestClient = require("reqclient").RequestClient;
var client = new RequestClient({
baseUrl:"http://baseurl.com/api/", debugRequest:true, debugResponse:true});
client.post("client/orders", {"client": 1234, "ref_id": "A987"},{"x-token": "AFF01XX"});
Это войдет в консоль ...
[Requesting client/orders]-> -X POST http://baseurl.com/api/client/orders -d '{"client": 1234, "ref_id": "A987"}' -H '{"x-token": "AFF01XX"}' -H Content-Type:application/json
А когда ответ возвращается ...
[Response client/orders]<- Status 200 - {"orderId": 1320934}
Это пример того, как обрабатывать ответ с объектом обещания:
client.get("reports/clients")
.then(function(response) {
// Do something with the result
}).catch(console.error); // In case of error ...
Конечно, он может быть установлен с: npm install reqclient
.