gpt4 book ai didi

javascript - 如何使用 superagent-mock 作为临时后端

转载 作者:行者123 更新时间:2023-11-27 23:55:16 31 4
gpt4 key购买 nike

摘自 superagent 网站,它说“有了这个技巧,您可以开发前端而无需访问任何 API。它非常有用,可以在您的计算机上本地工作,无需互联网,或者使您的功能独立于任何第三方进行测试。”

我创建了一个配置文件:

// ./config.js file
module.exports = [
{
pattern: 'http://tech.m6web.fr/api/authors',
fixtures: './authors.js',
callback: function (match, data) {
return { body : data };
}
];

其余调用返回的模拟数据:

// ./authors.js file
module.exports = function () {
return [
{
id: 1,
name: "John Doe",
description: "unidentified person"
},
...
];
};

下一步是什么?它说要放

// ./server.js file
var request = require('superagent');
var config = require('./config.js');
var mock = require('superagent-mock')(request, config);

在 server.js 文件中。这是我当前定义休息服务的文件吗?将从 superagent 导入的 request 替换为创建的 mock 变量?

而不是request.get(url)...:

return new Promise ((resolve,reject)=> {request.get(url).end((err,res)=> { err?reject(err):resolve(res) }); }).then(...)

使用创建的模拟变量? mock.get(url)...

return new Promise ((resolve,reject)=> {mock.get(url).end((err,res)=> { err?reject(err):resolve(res) }); }).then(...)

但是var mock为空..我做错了什么吗?

最佳答案

这是 superagent-mock 配置的最简单示例:

var request = require('superagent');
var mock = require('superagent-mock');

var config = [
{
pattern: 'https://domain.example(.*)',
fixtures: function (match, params, headers) {
return 'foo'
},
get: function (match, data) {
return data
}
}
];

mock(request, config);

request
.get('https://domain.example')
.end((err, res) => {
console.log(res); // ===> foo
});

看起来 api 从这篇文章的时候开始改变了 http://tech.m6web.fr/how-did-we-mock-the-backend-developers.html 。 github上官方api就可以了https://github.com/M6Web/superagent-mock .

关于javascript - 如何使用 superagent-mock 作为临时后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33221627/

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