无法获取有关控制器操作.NET Core + Angular 2的数据

时间:2017-03-14 11:11:42

标签: angular asp.net-core

我的角度2服务:

private verifyUserEmailUrl = 'api/admin/verifyuseremail';
verifyUserEmail(email: string): Observable<boolean> {
    let params = new URLSearchParams();
    params.set('email', email);
    return this.http
        .get(this.verifyUserEmailUrl, { search: params })
        .map((response: Response) => {
            return this.extractData(response);
        });
    }

我的控制器操作:

[Route("[action]")]
[HttpGet]
public async Task<IActionResult> VerifyUserEmail(string email)
{
    return Json(new Json("success", false));
}

我在Visual Studio中设置了断点,但应用程序没有进入该断点。我还尝试将[FromQuery]添加到email,但它没有帮助。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

来自Documentation

  

http.get尚未发送请求。这个Observable是   冷,这意味着请求不会出现,直到某事   subscribes到Observable。

所以你需要subscribe到你的Observable。最后,您需要在其上调用subscribe函数来实际执行请求。

private verifyUserEmailUrl = 'api/admin/verifyuseremail';

verifyUserEmail(email: string): Observable<boolean> {
    let params = new URLSearchParams();
    params.set('email', email);
    return this.http
        .get(this.verifyUserEmailUrl, { search: params })
        .map((response: Response) => {
            return this.extractData(response);
        })
        .subscribe((data) => /* Your code here */);
    }

答案 1 :(得分:0)

您的控制器映射了错误的网址。使用下面的映射。

np.dot