Вопрос:

Аутентификация с использованием Fetch

javascript mysql node.js reactjs loopbackjs

15 просмотра

1 ответ

1 Репутация автора

Я использую Javascript в реакции. У меня есть таблица «users» в моей базе данных с логическим значением, которое говорит мне тип пользователя (пациент, врач и т. Д.), Что я пытаюсь сделать, когда я вставляю код пользователя в форму авторизации в моем приложении -конец, он проверяет, существует ли пользователь && не является "пациентом". Если ответ верный, он должен перенаправить на другую страницу с маршрутом.

Я попробовал некоторый код, но он перенаправил в любом случае.

import React, { Component } from 'react';
import { styles }           from './styles.scss';

class HomeView extends React.Component {
  constructor(props) {
   super(props);
    this.state = {value: ''};

this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this); }

  handleChange(event) {
    this.setState({value: event.target.value});
}

handleSubmit() {
const { history } = this.props;
if(checkUtente() )
  history.push('/uploadareariservata')  
else
console.log('no pazienti')
   };
 render() {
return (
  <div className={styles}>
  <form onSubmit={this.handleSubmit}>
    <label>
      Area Riservata:
      <br />
      <br />
      <input type="Alphanumeric" value={this.state.value} onChange={this.handleChange} placeholder="codice" />
      <br />
      <br/>
    </label>
    <input type="submit" value="Accedi" placeholder="inserire codice" />
  </form>
  </div>
);
}
}

 function checkUtente() {
return fetch('http://localhost:8080/api/UTENTEs?filter={"where":{"is_paziente":false}}', {
    method: 'GET',
    headers: { 
      Accept: 'application/json',
      'Content-Type': 'application/json',
    }

})
.then(response => response.json())
.then(response => true)
.catch(error => false);
} 

export default HomeView;

Я ожидаю, что меня перенаправят на / uploadareariservata, если ввод существует, но это не пациент.

Автор: mikirug88 Источник Размещён: 11.08.2019 08:08

Ответы (1)


0 плюса

66 Репутация автора

Я рекомендую добавить флаг. Пример:

console.log(checkUtente())

Я думаю, извлекать возвращать истину, если вы получите ответ 2XX (200, 2001 и т. Д.). Возможно, вам нужно получить данные ответа и, если он существует, перенаправить на «/ uploadareariservata»

Автор: Lucas Vazquez Размещён: 11.08.2019 08:22
Вопросы из категории :
32x32