@@ -47,7 +47,7 @@ interface State {
47
47
username : string
48
48
password : string
49
49
submitted : boolean
50
- failure : boolean
50
+ failure ?: string
51
51
persistent : boolean
52
52
}
53
53
@@ -63,7 +63,6 @@ class Login extends React.Component<Props, State> {
63
63
username : "" ,
64
64
password : "" ,
65
65
submitted : false ,
66
- failure : false ,
67
66
persistent : false
68
67
}
69
68
}
@@ -99,19 +98,19 @@ class Login extends React.Component<Props, State> {
99
98
100
99
var conf = new Configuration ( { basePath : endpoint } )
101
100
var api = new LoginApi ( conf )
102
-
101
+
103
102
api . login ( this . state . username , this . state . password )
104
- . catch ( ( ) => {
105
- this . setState ( { failure : true } )
106
- } )
107
103
. then ( response => {
108
104
if ( response ) {
109
- this . setState ( { failure : false } )
105
+ this . setState ( { failure : undefined } )
110
106
return response . json ( )
111
107
} else {
112
- this . setState ( { failure : true } )
108
+ this . setState ( { failure : "empty response" } )
113
109
}
114
110
} )
111
+ . catch ( err => {
112
+ this . setState ( { failure : err . statusText ? err . statusText : err . message } )
113
+ } )
115
114
. then ( data => {
116
115
if ( data ) {
117
116
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> {
123
122
this . props . history . push ( from )
124
123
}
125
124
} )
125
+ . catch ( err => {
126
+ this . setState ( { failure : err . statusText } )
127
+ } )
126
128
}
127
129
128
130
render ( ) {
@@ -140,8 +142,8 @@ class Login extends React.Component<Props, State> {
140
142
< div className = { classes . paper } >
141
143
{ this . state . failure &&
142
144
< 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 >
145
147
</ React . Fragment >
146
148
}
147
149
< form className = { classes . form } noValidate onSubmit = { this . handleSubmit . bind ( this ) } >
0 commit comments