約束通り:
コントローラ側から:(コントローラはAPIConnexionController.csという)
[HttpGet]
public IActionResult Connexion(string aLogin, string aMdp)
{
// Do your stuff
}
あなたはAngular2からセットアップあなたの方法を、その後することができますサービスまたはコンポーネントをhttp://www.cisco.com/jpにアクセスしてください。
(私の場合)
auth.service.ts
private controllerURL: string = "/APIConnexion/auth";
login(aLogin: string, aMdp: string) {
// Setup parameters to send to ASP controller
let params = new URLSearchParams();
params.set("aLogin", aLogin); // => Left side must match Controller method parameter
params.set("aMdp", aMdp);
// Setup the http request
let lHttpRequestBody = params.toString();
let lControllerAction: string = "/connexion/?";
let lControllerFullURL: string = this.controllerURL + lControllerAction;
// Call the ASP.NET controller : APIController
return this.http.get(lControllerFullURL + lHttpRequestBody)
.map((res: any) => {
let data = res.json();
// Manage cases
switch (data.status) {
case "success":
this.isLoggedIn = true;
this.lcLogin = aLogin;
break;
case "error":
this.isLoggedIn = false;
throw new Error("Failure : " + data.message);
}
}
).catch(this.handleError);
}
そしてちょうどあなたのテンプレートのHTMLにあなたのAngular2コンポーネントからあなたが持っているデータを表示するか、単に私のlogin()
方法のようないくつかのアクションを実行します。
// Manage authentication
login(username, password) {
this.authService.login(username, password)
.subscribe(() => {
// Call the service Method
if (this.authService.isLoggedIn) {
// Redirect the user to master component
this.router.navigate(['/master/dashboard']);
}
});
}
私は実際にあなたのためのいくつかの例を得て、明日の朝に回答に投稿します –
ありがとう、それを楽しみにしています。 –
完了!ここに私自身の作業例があります –