Настройка и API внутри ASP.net (проблемы с URL?) - PullRequest
0 голосов
/ 13 февраля 2019

Теперь я понимаю, что этот вопрос может быть немного отклонен, потому что это на самом деле не является прямой проблемой.Я очень уверен в C # и JavaScript ... поэтому я решил, наконец, выучить ASP.net (.net Framework).Я понимаю, что делают вызовы API и AJAX, такие как обработка данных и запуск функции API для извлечения данных.Но как вы соединяете их вместе в проекте?

Это WEBAPI.config

 namespace SignalRDbUpdates
 {
   public static class WebApiConfig
   {
    public static void Register(HttpConfiguration config)
    {
        config.MapHttpAttributeRoutes();


        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
    }
 }
}

Это API, я еще ничего не настроил, просто хочу знать, как начатьAJAX-вызов этого API ... может быть, сейчас просто верните строку в окно оповещения.

namespace DotNetFramework.Controllers.API
{
public class TestAPI : ApiController
{
    // GET api/<controller>
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    // GET api/<controller>/5
    public string Get(int id)
    {
        return "value";
    }

    // POST api/<controller>
    public void Post([FromBody]string value)
    {
    }

    // PUT api/<controller>/5
    public void Put(int id, [FromBody]string value)
    {
    }

    // DELETE api/<controller>/5
    public void Delete(int id)
    {
    }
}
}

Это вызов AJAX, когда URL-адрес публики меня смущает, иприветствуется также расширение AJAX get

$.ajax({
               method: 'POST',
               url: '?',
               success: function()
               {
                   alert('Working');
                },
                error: function()
                {
                    alert('Error');
                }
            });

Подводя итог, я хочу знать, как работает API с AJAX на базовом уровне вызова и отправки данных, а также поиска и получения данныхиз API.Раздел URL этого - то, что смущает меня больше всего.

1 Ответ

0 голосов
/ 13 февраля 2019

Если вы посмотрите на код скаффолдинга, в частности на закомментированные элементы, он должен дать вам то, что вы ищете.

например,

 // GET api/<controller>
 public IEnumerable<string> Get()

Это означает попадание в эту конечную точку,Ваш URL: /api/teSTaPi (намеренно показывает, что корпус не имеет значения) с GET.Ваше Controller имя = <controller> в комментариях в скаффолде (он же "заполнитель"), в данном случае это TestAPI (имя класса вашего контроллера).

  • соглашение об именах TestControllerтак что вы можете использовать /api/test/

В Web API имена методов и параметров по умолчанию (или ни одного) будут сопоставляться с протоколом (GET, POST и т. д.) ивызов определенного метода.

REF: Маршрутизация в ASP.NET Web API

Hth ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...