返回 404 请求用户电子邮件 [ASP.NET Web API] 时未找到



我正在尝试通过使用 JQuery 在输入框中编写电子邮件(以选择消息收件人(ASP.NET Web API 获取用户电子邮件,但返回的值为 null。在我的代码中传递进程是否有任何问题?

网页应用接口:

[AllowAnonymous]
        [HttpGet]
        [Route("get-reciver-email")]
        public ApplicationUser GetReciverEmailId([FromUri] string email)
        {
            return _userManager.FindByEmail(email);
        }

客户端"JQuery":

$('#toEmail').keyup(function () {
                $.ajax({
                    url: '/api/Account/get-reciver-email/' + $("#toEmail").val(),
                    method: 'GET',
                    success: function (response) {
                        console.log(response);
                    },
                    // Display errors if any in the Bootstrap alert <div>
                    error: function (jqXHR) {
                        $('#divErrorText').text(jqXHR.responseText);
                        $('#divError').show('fade');
                    }
                });
            });

我希望根据 HTML 形式传递的电子邮件返回用户信息。

已解决。

我删除了[FromUri],我使用了查询字符串(THX表示@Mihai(,我还修改了API函数为以下内容:

[AllowAnonymous]
[HttpGet]
[Route("get-reciver-email")]
public string GetReciverEmailId(string email)
{
    return   db.Users.Where(x => x.Email == email).Select(x => x.Id).Single();
}

客户端代码:

$('#toEmail').keyup(function () {
                $.ajax({
                    url: '/api/Account/get-reciver-email/?email=' + $("#toEmail").val(),
                    method: 'GET',
                    success: function (response) {
                        console.log(response);
                    },
                    // Display errors if any in the Bootstrap alert <div>
                    error: function (jqXHR) {
                        $('#divErrorText').text(jqXHR.responseText);
                        $('#divError').show('fade');
                    }
                });
            });

最新更新