Showing
3 changed files
with
54 additions
and
0 deletions
| @@ -247,6 +247,14 @@ export class HttpUrlUtils { | @@ -247,6 +247,14 @@ export class HttpUrlUtils { | ||
| 247 | return 'eyJhbGciOiJIUzI1NiIsImtpZCI6ImQ4WkI2QkhxSEZrdjJ2U25BNlRwZEdKRjBHcjItVzBvS2FaYzdLOUUycmcifQ.eyJpc3MiOiJwZW9wbGVzLWRhaWx5LWZvdXJhIiwic3ViIjoicGVvcGxlcy1kYWlseS1mb3VyYSIsImV4cCI6MTcwMzY0OTYwNiwidXNlcklkIjo0NTk3NzYyOTc0NzQ5NDksInVzZXJWZXJzaW9uIjoiNDU5Nzc2Mjk3NDc0OTQ5XzIiLCJ1c2VyTmFtZSI6IkJ1bGlraWtpMTgxIiwidXNlclR5cGUiOjIsImNyZWF0b3JJZCI6NDI2NTM5MH0.jhQ9kylcm3FxWf0-lBMZuLkdtIQ6XpFnAi0AFZJNwfc'; | 247 | return 'eyJhbGciOiJIUzI1NiIsImtpZCI6ImQ4WkI2QkhxSEZrdjJ2U25BNlRwZEdKRjBHcjItVzBvS2FaYzdLOUUycmcifQ.eyJpc3MiOiJwZW9wbGVzLWRhaWx5LWZvdXJhIiwic3ViIjoicGVvcGxlcy1kYWlseS1mb3VyYSIsImV4cCI6MTcwMzY0OTYwNiwidXNlcklkIjo0NTk3NzYyOTc0NzQ5NDksInVzZXJWZXJzaW9uIjoiNDU5Nzc2Mjk3NDc0OTQ5XzIiLCJ1c2VyTmFtZSI6IkJ1bGlraWtpMTgxIiwidXNlclR5cGUiOjIsImNyZWF0b3JJZCI6NDI2NTM5MH0.jhQ9kylcm3FxWf0-lBMZuLkdtIQ6XpFnAi0AFZJNwfc'; |
| 248 | } | 248 | } |
| 249 | 249 | ||
| 250 | + static getRefreshToken() { | ||
| 251 | + let refreshToken = SPHelper.default.getSync(SpConstants.USER_REFRESH_TOKEN,"") | ||
| 252 | + if(StringUtils.isNotEmpty(refreshToken)) { | ||
| 253 | + return refreshToken as string; | ||
| 254 | + } | ||
| 255 | + return ''; | ||
| 256 | + } | ||
| 257 | + | ||
| 250 | private static getDeviceId() { | 258 | private static getDeviceId() { |
| 251 | // TODO | 259 | // TODO |
| 252 | return '8a81226a-cabd-3e1b-b630-b51db4a720ed'; | 260 | return '8a81226a-cabd-3e1b-b630-b51db4a720ed'; |
| @@ -337,6 +345,12 @@ export class HttpUrlUtils { | @@ -337,6 +345,12 @@ export class HttpUrlUtils { | ||
| 337 | return url; | 345 | return url; |
| 338 | } | 346 | } |
| 339 | 347 | ||
| 348 | + static getLogoutUrl() { | ||
| 349 | + let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/logout"; | ||
| 350 | + return url; | ||
| 351 | + } | ||
| 352 | + | ||
| 353 | + | ||
| 340 | static getResetPassworddUrl() { | 354 | static getResetPassworddUrl() { |
| 341 | let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/resetPassword"; | 355 | let url = HttpUrlUtils.hostUrl + "/api/rmrb-user-center/user/zh/c/resetPassword"; |
| 342 | return url; | 356 | return url; |
| @@ -221,5 +221,30 @@ export class LoginModel { | @@ -221,5 +221,30 @@ export class LoginModel { | ||
| 221 | }) | 221 | }) |
| 222 | } | 222 | } |
| 223 | 223 | ||
| 224 | + //退出登录 | ||
| 225 | + logOut() { | ||
| 226 | + let bean: Record<string, string> = {}; | ||
| 227 | + bean['refreshToken'] = HttpUrlUtils.getRefreshToken(); | ||
| 228 | + | ||
| 229 | + let headers: HashMap<string, string> = HttpUrlUtils.getCommonHeaders(); | ||
| 230 | + | ||
| 231 | + return new Promise<string>((success, fail) => { | ||
| 232 | + HttpRequest.post<ResponseDTO<string>>(HttpUrlUtils.getLogoutUrl(), bean, headers).then((data: ResponseDTO<string>) => { | ||
| 233 | + if (!data || !data.data) { | ||
| 234 | + fail("数据为空") | ||
| 235 | + return | ||
| 236 | + } | ||
| 237 | + if (data.code != 0) { | ||
| 238 | + fail(data.message) | ||
| 239 | + return | ||
| 240 | + } | ||
| 241 | + success(data.data) | ||
| 242 | + }, (error: Error) => { | ||
| 243 | + fail(error.message) | ||
| 244 | + Logger.debug("LoginViewModel:error ", error.toString()) | ||
| 245 | + }) | ||
| 246 | + }) | ||
| 247 | + } | ||
| 248 | + | ||
| 224 | } | 249 | } |
| 225 | 250 |
| @@ -139,10 +139,25 @@ export class LoginViewModel { | @@ -139,10 +139,25 @@ export class LoginViewModel { | ||
| 139 | fail(message) | 139 | fail(message) |
| 140 | }) | 140 | }) |
| 141 | }) | 141 | }) |
| 142 | + } | ||
| 142 | 143 | ||
| 144 | + // 登出 | ||
| 145 | + logOut(){ | ||
| 146 | + return new Promise<string>(async (success, fail) => { | ||
| 147 | + this.loginModel.logOut().then((data) => { | ||
| 148 | + //清除登录状态以及token、userid等信息 | ||
| 149 | + HttpUrlUtils.setUserId(''); | ||
| 150 | + HttpUrlUtils.setUserType(''); | ||
| 151 | + HttpUrlUtils.setUserToken(''); | ||
| 152 | + success(data) | ||
| 153 | + }).catch((message: string) => { | ||
| 154 | + fail(message) | ||
| 155 | + }) | ||
| 156 | + }) | ||
| 143 | } | 157 | } |
| 144 | 158 | ||
| 145 | 159 | ||
| 160 | + | ||
| 146 | async doMd(content: string): Promise<string> { | 161 | async doMd(content: string): Promise<string> { |
| 147 | let mdAlgName = 'SHA256'; // 摘要算法名 | 162 | let mdAlgName = 'SHA256'; // 摘要算法名 |
| 148 | let message = content; // 待摘要的数据 | 163 | let message = content; // 待摘要的数据 |
-
Please register or login to post a comment