javascript - 如何使用 sinon.fakeServer 响应请求体?

标签 javascript sinon

Sinon documentation声明可以访问请求对象:

server.respondWith(response);

[...]

When the response is a Function, it will be passed the request object. You must manually call respond on it to complete the request.

但天真的方法似乎并不奏效:

const server = sinon.server.create();

server.respondWith(request => request.requestBody);

(在我的 Mocha 套件中将响应作为错误抛出)。

最佳答案

您需要添加server.respond();。之后,您将拥有 server.requests 对象。
例如在 qunit 中:

server.respond([200, { "Content-type": "application/json" }, "OK"]);
assert.ok(server.requests.length > 0, "Response received");
assert.ok(server.requests[0].status == 200, "Status is 200");

关于javascript - 如何使用 sinon.fakeServer 响应请求体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45163874/

相关文章:

javascript - 无法同时验证表单和调用函数 onclick 提交按钮

javascript - AJAX获取请求JSONP解析器错误: readyState":4 ,"status":200 ,"statusText" :"load"}]

javascript - Sinon clock.tick 不会提前 setTimeout 的时间

javascript - 监视在被拒绝的 promise 中调用的函数

javascript - 使用 Sinon.JS 打桩 async.waterfall

javascript - 当将禁用的输入从 true 更改为 false 时,为什么我无法单击该输入?

javascript - AngularJS(前端)和 Laravel(后端)中 JSON/Arrays 中的 NULL

javascript - 关于 chrome 扩展本地存储的说明

reactjs - redux-saga 的单元测试抛出错误 : runSaga must be called on an iterator

javascript - 如何在 Sinon 中过滤请求