Можно ли использовать фейкер для создания поддельных данных JSON

Мне было интересно, есть ли способ настроить поддельные данные (информацию), такие как name и email, и сохранить их в файле JSON.

Я знаю, что фейкер можно использовать с узлом и NPM для создания фальшивых данных в JS, но как насчет JSON?


person Rebekah    schedule 24.11.2016    source источник
comment
Если вам нужен быстрый браузерный инструмент для создания данных json, попробуйте json-generator.com.   -  person ksav    schedule 24.11.2016
comment
к сожалению, я хочу иметь возможность сделать это, используя node и npm   -  person Rebekah    schedule 24.11.2016
comment
Итак, все, что вы хотите сделать, это сохранить результаты подделки в файл json?   -  person ksav    schedule 24.11.2016


Ответы (2)


Еще один пример генерирует десять пользователей и записывает их в файл data.json.

employees.js

let faker = require('faker');
let fs = require('fs');

function generateEmployees() {
  let employees = [];
  for (let id = 1; id <= 10; id++) {
    let firstName = faker.name.firstName();
    let lastName = faker.name.lastName();
    let email = faker.internet.email();
    employees.push({
      id: id,
      first_name: firstName,
      last_name: lastName,
      email: email,
    });
  }
  return { employees: employees };
}
module.exports = generateEmployees;

let dataObj = generateEmployees();
fs.writeFileSync('data.json', JSON.stringify(dataObj, null, '\t'));

Обслуживание поддельных данных с помощью JSON Server

$ json-server employees.js

введите здесь описание изображения

Теперь вы можете щелкнуть ссылку Ресурсы, чтобы увидеть результат.


Обновлять

Вдохновленный @le_m, вы можете генерировать фиктивные данные без использования цикла for:

let faker = require('faker');
let fs = require('fs');

const generateEmployee = () => {
  return {
    id: faker.random.uuid(),
    first_name: faker.name.firstName(),
    last_name: faker.name.lastName(),
    email: faker.internet.email(),
  };
};

const generateEmployees = (numUsers) => {
  return Array.from({ length: numUsers }, generateEmployee);
};

let dataObj = generateEmployees(10);
fs.writeFileSync('data.json', JSON.stringify(dataObj, null, '\t'));

Затем просто запустите сервер с помощью следующей команды:

$ node employees.js
person Penny Liu    schedule 25.06.2020

person    schedule
comment
это сохраняет файл как файл json, но не в формате json :-( - person Rebekah; 24.11.2016
comment
есть ли способ установить его так, чтобы я мог добавить 10 новых пользовательских записей в файл json - person Rebekah; 24.11.2016
comment
Конечно, есть способ. Начните с пустого массива результатов и сгенерируйте данные мошенника внутри цикла. Каждый раз нажимайте на массив результатов. Затем, когда цикл завершится, запишите строковые результаты в свой файл. - person ksav; 24.11.2016
comment
Спасибо, это действительно помогло - person Rebekah; 24.11.2016
comment
Удачи. Кроме того, проверьте этот вопрос для нажатия на массив из цикла. stackoverflow.com/questions/12491101/ - person ksav; 24.11.2016