Boa noite pessoal.
Estou tendo dificuldades para enviar uma request, através do post, para o endereço http//localhost:3000 para fazer a autenticação.
Por alguma razão o sistema está concatenando o endereço da própria aplicação com o endereço da API, resultando no endereço http://localhost:4200/http//localhost:3000/user/login. Por causa disso eu estou tomando o erro 404 (not found).
Alguém poderia me dizer o que eu posso ter feito de errado?
Segue abaixo o meu auth.service:
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
const API_URL = 'http//localhost:3000';
@Injectable({
providedIn: 'root'
})
export class AuthService {
constructor(private http: HttpClient) { }
authenticate(userName: string, password: string) {
return this.http.post(API_URL + '/user/login', { userName, password });
}
}
Segue abaixo o meu signin.component:
import { Component, OnInit } from '@angular/core';
import { FormGroup, FormBuilder, Validators } from '@angular/forms';
import { AuthService } from 'src/app/core/auth.service';
@Component({
templateUrl: './signin.component.html'
})
export class SignInComponent implements OnInit {
private loginForm: FormGroup;
constructor(
private formBuilder: FormBuilder,
private authService: AuthService) {
}
ngOnInit(): void {
this.loginForm = this.formBuilder.group({
userName: ['', Validators.required],
password: ['', Validators.required]
});
}
login() {
console.log('Vai se autenticar');
const userName = this.loginForm.get('userName').value;
const password = this.loginForm.get('password').value;
this.authService
.authenticate(userName,password)
.subscribe(() => {
console.log('Autenticado com sucesso');
},
(erro: Error) => {
console.log('Erro na autenticação: ' + erro.message);
alert('Erro na autenticação. Detalhes: ' + erro.message);
this.loginForm.reset();
})
}
}
Segue abaixo o meu app.routing.module (não sei se isso é relevante):
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { PhotoListComponent } from './photos/photo-list/photo-list.component';
import { PhotoFormComponent } from './photos/photo-form/photo-form.component';
import { NotFoundComponent } from './errors/not-found/not-found.component';
import { PhotoListResolver } from './photos/photo-list/photo-list.resolver';
import { SignInComponent } from './home/signin/signin.component';
const routes: Routes = [
{
path: '',
component: SignInComponent
},
{
path: 'user/:userName',
component: PhotoListComponent,
resolve: {
photos: PhotoListResolver
}
},
{
path: 'p/add',
component: PhotoFormComponent
},
{
path: '**',
component: NotFoundComponent
}
];
@NgModule({
imports: [
RouterModule.forRoot(routes)
],
exports: [ RouterModule ]
})
export class AppRoutingModule { }