Я пытаюсь передать учетные данные из Angular в C #, но Angular получает 404. Я следую учебному пособию отсюда . Что-то не так с тем, как я передаю данные? Я уверен, что маршрут правильный.
ОПЦИИ http://localhost:52008/Account/GetJWT 404 (не найдено)
логин: 1 Не удалось загрузить http://localhost:52008/Account/GetJWT: Ответ на предпечатную проверку не имеет статуса HTTP ok.
Из AccountController:
[Route("[controller]/[action]")]
public class AccountController : Controller
{
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<IActionResult> GetJWT([FromBody]LoginModel user)
{
myJWT m = new myJWT(user);
return Ok(new { Token = m.token });
}
}
Угловой код, вызывающий контроллер выше:
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Component } from '@angular/core';
import { Router } from "@angular/router";
import { NgForm } from '@angular/forms';
@Component({
selector: 'login',
templateUrl: './login.component.html'
})
export class LoginComponent {
invalidLogin: boolean;
constructor(private router: Router, private http: HttpClient) { }
login(form: NgForm) {
let credentials = JSON.stringify(form.value);
console.log(credentials);
this.http.post("http://localhost:52008/Account/GetJWT", credentials, {
headers: new HttpHeaders({
"Content-Type": "application/json"
})
}).subscribe(response => {
let token = (<any>response).token;
localStorage.setItem("jwt", token);
this.invalidLogin = false;
this.router.navigate(["/"]);
}, err => {
this.invalidLogin = true;
});
}
}