Я использую модуль nock для перехвата HTTP-вызовов к моей службе API (еще не разработанной) и возвращать некоторые макеты данных, которые у меня есть во временной базе данных ,Node.js - module: nock - .reply с обратным вызовом не работает
Я заметил, что HTTP-запросы перехватываются должным образом, но проблема, которую я вижу, заключается в том, что до того, как моя функция получит требуемые данные из временной базы данных, ответ на нок.
Для простой демонстрации, посмотрите на код ниже:
var nock = require('nock');
var nockReq = nock("http://localhost:8000")
.post("/sample-endpoint")
.reply(200, function (uri, requestBody) {
setTimeout(function() {
return {"result": "TIMED OUT"}
}, 2000
);
С выше кода, когда я не использую тайм-аут, я получаю возвращенные данные должным образом, как и ожидалось. Но с этим тайм-аутом нок, похоже, не ждет обратного вызова, вместо этого продолжит отвечать на пустой ответ 200.
Этот вопрос не связан с использованием обратных вызовов для асинхронных функций. Эта проблема очень специфична для метода ответа в модуле nock. – Ananth
Не представляется возможным сделать это с помощью носки, видимо, – Natim
http://www.stackoverflow.com/questions/25684307/node-js-module-nock-reply-with-a-callback-doesnt-work – Natim