介绍
我们很敏捷! 在我们的大多数项目中,都要求我们与后端服务和API并行开发用户界面。 这给我们带来了实施和测试用户界面的挑战,而没有实际和真实的数据可用性。 不仅如此,API怎么样? 可以伪造成这样吗?
- 用户界面可以在第一天与REST API集成吗?
- 这些API提供的交互点几乎与实际数据类似?
- 这些调用可以通过有线方式进行,从而使我们有一种从远程服务器检索数据的感觉(模拟真实的用例)
- 可以在几分钟内完成吗?
对于大多数我不担心数据真实性的项目,但其余的都很重要,我想结合使用以下各项:
Faker.js
Faker.js帮助我们实时快速构建大量的Fake数据。 尽管数据是伪造的,但是您仍然可以使用所需的类型和结构来构建数据,从而可以及早测试用户界面。
它提供了多种方法来提供与地址,财务,商业,日期等有关的数据。
JSON服务器
JSON Server可帮助我们在不到一分钟的时间内用零编码获得完整的伪造REST API! 这是疯狂的事实。 它的优点在于,它使用JSON文件作为数据存储,可以使用Faker.js轻松构建 。
展示:快速步骤
当我们对Faker.js和JSON Server进行了高级介绍时,让我们看到它们在一起可以更快地解决数据和API原型问题。
创建一个新项目
- 用您选择的名称创建目录。 例如, json-faker-server 。
- 转到目录json-faker-server 。
- 做
npm init - 回答问题以创建节点项目。 现在,您必须创建一个名为
package.json的文件。
安装依赖项
- 安装Faker.js
npm install faker --save
- 安装JSON服务器
npm install json-server --save
创建一个数据库
我们将使用Faker.js创建数据库( db.json )。
- 在文件夹的根目录下创建一个名为
index.js的文件。 - 创建您需要的假数据。 在下面的示例中,我展示了如何使用对我有意义的属性来创建用户数据。
const faker = require ( 'faker' ); let database = { users : []}; const threshold = 1000 ; for ( let i = 1 ; i<= threshold; i++) { database.users.push({ id : i, name : faker.name.firstName() + " " + faker.name.lastName(), job : faker.name.jobTitle(), about : faker.lorem.paragraph(), phone : faker.phone.phoneNumber(), userName : faker.internet.userName(), email : faker.internet.email(), salary : "$" + faker.finance.amount() + "M" , // You can also use faker.image.people() for image image: "https://source.unsplash.com/1600x900/?user" , country : faker.address.country() }); } console .log( JSON .stringify(database));
- 在package.json 脚本中添加此代码,
"generate" : "node ./index.js > ./db.json" ,
- 现在,只需运行以下命令即可生成1000条用户记录(在db.json中 ):
npm run generate
创建服务器和API
- 此步骤更简单。 在
package.json脚本中添加此代码, "server" : "json-server --watch ./db.json"
- 现在,您可以使用以下命令启动服务器:
npm run server您将看到服务器在默认端口(3000)上运行。 该API将在@localhost:3000 / users可用
API函数
这些是我们可以通过JSON REST API服务器使用的API端点:
- GET / users获取用户
- GET / users / <id>用于通过id获取单个用户
- POST / users用于创建新用户
- PUT / users / <id>用于通过id更新用户
- PATCH / users / <id>用于通过ID部分更新用户
- DELETE / users / <id>用于通过ID删除用户
我们也可以使用_page和_limit参数来获取分页数据。 不仅如此,还有一些搜索,排序,切片等选项,而无需编写一行代码。 有关更多详细信息,请参见此处 。
链接与资源
- 有多种方法可以在Heroku,Now,Azure等上部署和托管JSON服务器。 这里是如何做的很好的读物。 我已经在Heroku上部署了用户API。 它在这里: json-faker-server.herokuapp.com/users
- 关于Faker.js的所有信息都可以在这里找到。
- 从此处了解有关JSON Server的信息 。
- 这篇博客文章中的所有代码示例都可以在我的GITHub项目中找到。
希望您喜欢阅读。 目前为止就这样了。
From: https://hackernoon.com/back-end-data-and-api-prototyping-with-fakerjs-and-json-server-n5t36uw
本文介绍了如何利用Faker.js生成模拟数据,并结合JSON-Server快速搭建RESTful API原型,以实现后端数据和API的早期集成与测试。通过几个简单的步骤,演示了如何创建数据库、生成假数据、启动服务器并定义各种HTTP操作(GET、POST、PUT、PATCH、DELETE),从而为敏捷开发提供便利。

981

被折叠的 条评论
为什么被折叠?



