Skip to content

Commit 922cbbf

Browse files
committed
Report login error properly
1 parent f2a50aa commit 922cbbf

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

src/Login.tsx

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ interface State {
4747
username: string
4848
password: string
4949
submitted: boolean
50-
failure: boolean
50+
failure?: string
5151
persistent: boolean
5252
}
5353

@@ -63,7 +63,6 @@ class Login extends React.Component<Props, State> {
6363
username: "",
6464
password: "",
6565
submitted: false,
66-
failure: false,
6766
persistent: false
6867
}
6968
}
@@ -99,19 +98,19 @@ class Login extends React.Component<Props, State> {
9998

10099
var conf = new Configuration({ basePath: endpoint })
101100
var api = new LoginApi(conf)
102-
101+
103102
api.login(this.state.username, this.state.password)
104-
.catch(() => {
105-
this.setState({ failure: true })
106-
})
107103
.then(response => {
108104
if (response) {
109-
this.setState({ failure: false })
105+
this.setState({ failure: undefined })
110106
return response.json()
111107
} else {
112-
this.setState({ failure: true })
108+
this.setState({ failure: "empty response" })
113109
}
114110
})
111+
.catch(err => {
112+
this.setState({ failure: err.statusText ? err.statusText : err.message })
113+
})
115114
.then(data => {
116115
if (data) {
117116
this.props.openSession(endpoint, this.state.username, data.Token, data.Permissions, this.state.persistent)
@@ -123,6 +122,9 @@ class Login extends React.Component<Props, State> {
123122
this.props.history.push(from)
124123
}
125124
})
125+
.catch(err => {
126+
this.setState({ failure: err.statusText })
127+
})
126128
}
127129

128130
render() {
@@ -140,8 +142,8 @@ class Login extends React.Component<Props, State> {
140142
<div className={classes.paper}>
141143
{this.state.failure &&
142144
<React.Fragment>
143-
<div className={classes.failure}>Login failure</div>
144-
<div className={classes.failure}>bad Endpoint, Username or Password</div>
145+
<div className={classes.failure}>{this.state.failure}</div>
146+
<div>Please check Endpoint, Username or Password</div>
145147
</React.Fragment>
146148
}
147149
<form className={classes.form} noValidate onSubmit={this.handleSubmit.bind(this)}>

0 commit comments

Comments
 (0)