Пароль не работает Reactjs с сервером Nodejs - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь отправить имя и пароль на сервер Nodejs (с Expressjs) из внешнего интерфейса Reactjs. Когда я отправляю имя и пароль, отправляется только имя. Вот мой код Reactjs:

onSubmitSignIn = () => {
    console.log(this.state.signInPassword);
    fetch('http://localhost:3000/signin', {
        method: 'post',
        headers: {'Content-Type': 'application/json'},
        body: JSON.stringify({
            name: this.state.signinName,
            password: this.state.signinPassword
        })
    })
    .then(response => response.json())
    .then(user => {
        if(user.id){
            this.props.loadUser(user);
            this.props.onRouteChange('home');
        }
    })
}

Эта функция срабатывает правильно, и console.log () отображает пароль.
Вот мой код Nodejs:

 app.post('/signin', (req, res) => {
     const { name, password } = req.body;

     console.log("FRONT END : ", password);
     console.log("BACK END: ", database[0].password);
     console.log("FRONT END : ", name);
     if(name == database[0].name && password == database[0].password){
         res.json(database[0]);
     }else{
         res.status(400).json("Couldn't get user");
         console.log('didnt work');
     }
 })

console.log () для имени, которое я публикую из внешнего интерфейса, отображается, но console.log () для пароля, который я публикую из внешнего интерфейса, нет. Почему это происходит?

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Не знаю, была ли это опечатка, но в журнале консоли вы используете верблюжий случай:

console.log(this.state.signInPassword);

и в теле вы пропустили верхний регистр:

password: this.state.signinPassword
0 голосов
/ 08 мая 2018

Вам необходимо обновить

onSubmitSignIn = () => {
       var data = new FormData();
    data.append("json", JSON.stringify({
                name: this.state.signinName,
                password: this.state.signinPassword
            }));    

    fetch('http://localhost:3000/signin', {
        method: 'post',
        headers: {'Content-Type': 'application/json'},
        body: data 
    })
.then(response => response.json())
.then(user => {
    if(user.id){
        this.props.loadUser(user);
        this.props.onRouteChange('home');
    }
})

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...