gpt4 book ai didi

javascript - fetch-mock 调用实际的 API,而不是模拟请求

转载 作者:太空宇宙 更新时间:2023-11-04 01:52:58 26 4
gpt4 key购买 nike

鉴于此代码:

const fetch = require('isomorphic-fetch')
module.exports = function suggestions (...args) {
// some error handling code
return fetch(MY_ENDPOINT)
}

我发现当像这样使用 fetch-mock 时:

require('isomorphic-fetch')
const fetchMock = require('fetch-mock/es5/server')
fetchMock.mock(MY_ENDPOINT, [{}, {}])

describe('My spec', () => {
it('fakes a request to my endpoint', async () => {
const myData = await myCode(...args) // calls fetch with my endpoint
expect(myData).toEqual([{}, {}])
})
})

我希望模拟能够给我设置的响应,即 [{},{}],而不是调用真正的 API 并从中返回响应。

另外,如果我尝试使用 fetch-mock 而不是 fetch-mock/es5/server 我会收到错误:

/Users/localuser/lendi/ldp-domain-integration/node_modules/fetch-mock/src/lib/fetch-handler.js:57
FetchMock.generateResponse = async function (response, url, opts) {
^^^^^^^^

SyntaxError: Unexpected token function

我将 jest 与 babelbabel-jest 以及 node v6.13.0 一起使用。

最佳答案

语法错误的原因是 Node 版本 6 不支持异步函数。

尝试将 Node 更新到最新版本。

关于javascript - fetch-mock 调用实际的 API,而不是模拟请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48998625/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com