使用Faker.js和JSON-Server的后端数据和API原型

介绍

我们很敏捷! 在我们的大多数项目中,都要求我们与后端服务和API并行开发用户界面。 这给我们带来了实施和测试用户界面的挑战,而没有实际和真实的数据可用性。 不仅如此,API怎么样? 可以伪造成这样吗?

  • 用户界面可以在第一天与REST API集成吗?
  • 这些API提供的交互点几乎与实际数据类似?
  • 这些调用可以通过有线方式进行,从而使我们有一种从远程服务器检索数据的感觉(模拟真实的用例)
  • 可以在几分钟内完成吗?

对于大多数我不担心数据真实性的项目,但其余的都很重要,我想结合使用以下各项:

Faker.js

Faker.js帮助我们实时快速构建大量的Fake数据。 尽管数据是伪造的,但是您仍然可以使用所需的类型和结构来构建数据,从而可以及早测试用户界面。

它提供了多种方法来提供与地址,财务,商业,日期等有关的数据。

JSON服务器

JSON Server可帮助我们在不到一分钟的时间内零编码获得完整的伪造REST API! 这是疯狂的事实。 它的优点在于,它使用JSON文件作为数据存储,可以使用Faker.js轻松构建

展示:快速步骤

当我们对Faker.jsJSON 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获取单个用户
    • POST / users用于创建新用户
    • PUT / users / 用于通过id更新用户
    • PATCH / users / 用于通过ID部分更新用户
    • DELETE / users / 用于通过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

你可能感兴趣的:(json,后端,数据库)