Я очень новичок в веб-разработке, но я хотел создать веб-приложение api для существующего приложения Windows Service, которое я создал для работы.Как сделать HTTP-запрос GET самообслуживаемому API OWIN?
Моя цель прямо сейчас заключается в создании простого веб-приложения, состоящего из полей ввода текста, в которых кто-то может ввести свой адрес электронной почты и подписаться на список рассылки.
я указал в направлении использования Owin для самостоятельного хозяина веб апи в моем существующем проекте, так что я смотрел на это руководство, чтобы начать:
https://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api
Это руководство показывает консоль приложения призванию и отображение API, но я хотел сделать то же самое из веб-приложения. Поэтому я попытался сделать то, что сделано здесь, в руководстве 'Getting Started with ASP.NET Web Api 2', используя консольное приложение с OWIN.
Когда я начинаю консольное приложение, я могу войти http://localhost:8080/api/values/1
и я получаю <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">value</string>
Что я предполагаю, что означает, что веб-сервер работает и отвечает на запрос, чтобы получить мое строковое значение, что я возвращаюсь из моего ValuesController.
Однако я пытался создать простую веб-страницу, которая вызывает API, чтобы получить value
, но я не смог понять это.
Сейчас мой index.html имеет следующие в теле:
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.min.js"></script>
<script>
var uri = "http://localhost:8080/api/values/1";
$(document).ready(function() {
$.getJSON(uri)
.done(function (data) {
$('#value').text("done");
})
.fail(function (jqXHR, textStatus, err) {
$('#value').text('Error: ' + err);
});
});
</script>
И я просто получить Error:
напечатанный на этой странице. Снова я новичок в работе над технологиями, связанными с веб-технологиями, поэтому любое руководство будет высоко оценено.
Что говорят разработчики? Они могут быть очень полезны при отладке! Кроме того, если вы используете хром, вы можете поставить точку останова в javascript и посмотреть, что такое объекты jqxhr и textStatus. На данный момент вы просто выбросите их, они могут быть полезны! –
Кроме того, инструмент postman, как автономное приложение, так и хром-плагин, очень полезен для тестирования конечных точек api. Возможно, стоит убедиться, что ваш api работает с почтальоном, а затем работает над javascript. Нет смысла путаться, если ваш api не работает! –
Привет, Крис, спасибо за комментарий. Я пытаюсь пройтись по этим инструментам еще! Я использовал плагин Postman chrome и отправил GET с http: // localhost: 8080/api/values / 1 и «значение» появилось в теле, которое, я думаю, означает, что api работал. – riyu