Autenticação com Basic Auth na classe authservice no método login().

This commit is contained in:
z0rb3
2020-08-11 12:08:15 +01:00
parent c0a8c2b19d
commit 1b3265f02d
4 changed files with 71 additions and 8 deletions
+31
View File
@@ -3461,6 +3461,37 @@
"integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==",
"dev": true "dev": true
}, },
"axios": {
"version": "0.19.2",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz",
"integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==",
"requires": {
"follow-redirects": "1.5.10"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
},
"follow-redirects": {
"version": "1.5.10",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
"integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
"requires": {
"debug": "=3.1.0"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
}
}
},
"axobject-query": { "axobject-query": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz",
+1
View File
@@ -25,6 +25,7 @@
"@ionic-native/status-bar": "^5.0.0", "@ionic-native/status-bar": "^5.0.0",
"@ionic/angular": "^5.0.0", "@ionic/angular": "^5.0.0",
"@logisticinfotech/ionic4-datepicker": "^1.4.4", "@logisticinfotech/ionic4-datepicker": "^1.4.4",
"axios": "^0.19.2",
"capacitor-datepicker": "0.0.2", "capacitor-datepicker": "0.0.2",
"moment": "^2.27.0", "moment": "^2.27.0",
"rxjs": "~6.5.1", "rxjs": "~6.5.1",
+38 -7
View File
@@ -4,6 +4,7 @@ import { HttpService } from './http.service';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { AuthConnstants } from '../config/auth-constants'; import { AuthConnstants } from '../config/auth-constants';
import axios from "axios";
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
@@ -16,15 +17,45 @@ export class AuthService {
private router: Router private router: Router
) { } ) { }
/* login(postData: any): Observable<any> { async login(postData: any): Promise<any> {
return this.httpService.post('login', postData);
var session_url = 'https://gpr-dev-08.gabinetedigital.local/api/v2.0/me';
var credentials = btoa(postData.domainName + '\\' + postData.username + ':' + postData.password); //conversão em base64 das credenciais inseridas
var statusresult = -1;
//configuração dos headers para autênticação básica, passando as credenciais convertidas em base64
var config = {
headers: {
'Authorization': 'Basic ' + credentials,
},
};
await axios.get(session_url, config)
.then(function (response) {
statusresult = response.status;
})
.catch(function (error) {
if (error.response) {
statusresult = error.response.status;
}
});
if (statusresult == 200)
{
return true;
}
else
if (statusresult == 401)
{
return false;
}
else
{
return false;
}
} }
signup(postData: any): Observable<any> { /* logout(){
return this.httpService.post('signup', postData);
}
logout(){
this.storageService.removeStorageItem(AuthConnstants.AUTH).then(res =>{ this.storageService.removeStorageItem(AuthConnstants.AUTH).then(res =>{
this.router.navigate(['']) this.router.navigate([''])
}) })