fs.writefile с объектом возвращает [объект объекта] - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь переместить данные из формы в файл json, я впервые делаю что-то подобное.Когда он запускается, мой файл json выглядит следующим образом:

[объект объекта] вместо отображения адреса электронной почты, имени пользователя и пароля.

Это код моего сервера (expressjs):

app.post('/action_page.php',function(req,res){
    'use strict'
   email = req.body.email;
   username = req.body.name;
   password = req.body.password;

loginData = {
        email: email,
        username: username,
        password: password
    };

fs.writeFile('data.json', loginData, finished);

res.sendFile(__dirname + '/signupResponse.html');

email, имя пользователя и пароль являются глобальными переменными, объявленными как пустые строки, и logindata также объявляется глобально как таковой:

var loginData = {"email": "","username": "","password": ""};

Любая помощь будет высоко оценена!

1 Ответ

0 голосов
/ 10 октября 2018

Эту проблему можно решить с помощью метода JSON.stringify для сериализации объекта loginData в строку, что и то, что fs.writeFile ожидает для второго параметра.

Вы можете сделать это, обновив следующую строку следующим образом:

fs.writeFile('data.json', JSON.stringify(loginData), finished);

Надеюсь, это поможет!

...