Возвращено 404 Не найдено при запросе электронной почты пользователя [ASP.NET Web API] - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь получить электронную почту пользователя из ASP.NET Web API путем написания электронной почты в поле ввода с помощью JQuery (для выбора получателей сообщения), но возвращаемое значение равно нулю. Есть ли проблемы в прохождении процесса в моем коде?

Веб-API:

[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.

1 Ответ

0 голосов
/ 16 апреля 2019

решаемая.

Я удалил [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');
                    }
                });
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...