faker.js 教程显示了如何使用 faker.js 库在 JavaScript 中生成伪造数据。
faker.js
faker.js 是用于生成伪造数据的 JavaScript 库。 伪数据在构建和测试我们的应用时很有用。 faker.js 可以为各个领域生成伪造数据,包括地址,商业,公司,日期,财务,图像,随机数或名称。
在本教程中,我们在 Node 应用中使用 faker.js。
安装 faker.js
首先,我们安装 faker.js。
$ node -vv11.5.0
我们使用 Node 版本 11.5.0。
$ npm init -y
我们启动一个新的 Node 应用。
$ npm i faker
我们使用nmp i faker安装 faker.js 模块。
伪造名称
在第一个示例中,我们伪造了与用户名有关的数据。
names.js
const faker = require('faker');let firstName = faker.name.firstName();let lastName = faker.name.lastName();let jobTitle = faker.name.jobTitle();let prefix = faker.name.prefix();let suffix = faker.name.suffix();let jobArea = faker.name.jobArea();let phone = faker.phone.phoneNumber();console.log(`Employee: ${prefix} ${firstName} ${lastName} ${suffix}`);console.log(`Job title: ${jobTitle}`);console.log(`Job area: ${jobArea}`);console.log(`Phone: ${phone}`);
该示例创建一个随机的名字,姓氏,职务,姓名前缀和后缀,职务区域和电话号码。
const faker = require('faker');
我们需要伪造者模块。
let firstName = faker.name.firstName();
我们使用firstName()函数生成了虚假的名字。 该函数位于名称对象中。
$ node names.jsEmployee: Mrs. Vernice Abernathy IIIJob title: Customer Data AssociateJob area: ProgramPhone: 1-516-716-9832
这是一个示例输出。
伪造日期
在第二个示例中,我们生成假日期。
dates.js
const faker = require('faker');let futureDate = faker.date.future();let recentDate = faker.date.recent();let weekday = faker.date.weekday();console.log(futureDate);console.log(recentDate);console.log(weekday);
该示例选择了将来和最近的日期以及某个工作日。
$ node dates.js2019-04-13T19:09:43.672Z2019-01-06T12:28:29.089ZSaturday
这是一个示例输出。
伪造随机值
伪造者允许生成随机值,例如整数,uuid 或单词。
random_values.js
const faker = require('faker');let number = faker.random.number();console.log(number);let uuid = faker.random.uuid();console.log(uuid);let word = faker.random.word();console.log(word);let words = faker.random.words(6);console.log(words);
该示例生成随机数,uuid,单词和一组六个单词。
$ node random_values.js6301470356a-1197-4955-b3c1-30302fd1db10Facilitatordot-com connect Practical Checking Account Mandatory real-time
这是一个示例输出。
伪造语言环境数据
伪造者在某种程度上支持本地化数据。 请注意,语言环境已完成各种级别。
locale_faker.js
const faker = require('faker/locale/ru');let firstName = faker.name.firstName();let lastName = faker.name.lastName();console.log(`Pаботник: ${firstName} ${lastName}`);let month = faker.date.month();let recentDate = faker.date.recent();let rectentDate = faker.date.weekday();console.log(month);console.log(recentDate);console.log(rectentDate);
该示例使用俄语生成伪造数据。
$ node locale_faker.jsPаботник: Антон Васильевамай2019-01-06T19:24:01.283ZПятница
这是一个示例输出。
使用 JSON 服务器提供虚假数据
在下一个示例中,我们生成 JSON 数据并将其写入文件。 该文件由 JSON 服务器提供。
$ npm i g json-server
我们安装json-server模块。
generate_users.js
const faker = require('faker');const fs = require('fs')function generateUsers() {let users = []for (let id=1; id <= 100; id++) {let firstName = faker.name.firstName();let lastName = faker.name.lastName();let email = faker.internet.email();users.push({"id": id,"first_name": firstName,"last_name": lastName,"email": email});}return { "data": users }}let dataObj = generateUsers();fs.writeFileSync('data.json', JSON.stringify(dataObj, null, '\t'));
该示例生成一百个用户,并将它们写入data.json文件。
$ json-server --watch data.json --port 3004
我们启动 JSON 服务器。 服务器提供来自生成的 JSON 文件的数据。
$ curl localhost:3004/data/3/{"id": 3,"first_name": "Sheila","last_name": "Bayer","email": "Moshe.Walsh32@yahoo.com"}
我们使用curl工具使用 ID 3 检索用户。
我们展示了如何使用 Node request模块在 JavaScript 中生成 HTTP GET 请求。
$ npm i request
我们安装模块。
get_data.js
const request = require('request');request('http://localhost:3004/data?_start=4&_end=8', (err, resp, body) => {if (err) {console.error('request failed');console.error(err);} else {console.log(body);}});
该程序从 JSONServer 获取数据,数据从索引 4(不包括索引)开始,到索引 8(不包括索引)结束。
$ node get_data.js[{"id": 5,"first_name": "Cheyanne","last_name": "Ernser","email": "Amber.Spinka62@yahoo.com"},{"id": 6,"first_name": "Jeff","last_name": "Bogisich","email": "Bettie.Ritchie60@hotmail.com"},{"id": 7,"first_name": "Simone","last_name": "Zemlak","email": "Dorris49@gmail.com"},{"id": 8,"first_name": "Demond","last_name": "Barrows","email": "Nestor81@yahoo.com"}]
这是一个示例输出。
Faker CLI
faker-cli是一个节点模块,是faker.js的包装。 它允许从命令行工具生成假数据。
$ npm install -g faker-cli
我们安装faker-cli模块。
$ faker-cli -d future"2019-07-22T06:37:19.032Z"$ faker-cli -d recent"2019-01-06T21:46:50.788Z"$ faker-cli -n firstName"Tevin"$ faker-cli -n lastName"Sawayn"
我们使用faker-cli程序生成一些虚假数据。
在本教程中,我们使用了 faker.js 在 JavaScript 中生成假数据。
您可能也对以下相关教程感兴趣: Moment.js 教程, JSONServer 教程,从 JavaScript 中的 URL 读取 JSON , JavaScript 贪食蛇教程 , JQuery 教程, Node Sass 教程, Lodash 教程。
