REST API Get and Post Когда следует выбрать правильный - PullRequest
0 голосов
/ 12 мая 2019

Я использую ASP.NET CORE и сейчас изучаю REST API. Итак, я знаю разницу между разными глаголами, но я не могу объяснить одну вещь самому себе. Если у нас есть URL - / Customers / {ID}, и мы используем его, чтобы получить и отправить клиента. Как он мог определить, читать или создать нового клиента?

В контроллере я мог бы иметь это:

        [HttpGet]
        public IActionResult Customer(string id)
        {
            // not important
        }

        [HttpPost]
        public IActionResult Customer(string id)
        {
            // not important
        }

Итак, я хочу создать нового клиента и использовать / Customers / {John}. Как бы он выбрал HttpPost вместо HttpGet, если у них обоих одинаковые параметры?

1 Ответ

1 голос
/ 12 мая 2019

Это указывается потребителем API. Поскольку вы сказали, что вызываете его с веб-страницы, проиллюстрируйте пример с использованием API javascript fetch .

Пример POST:

fetch("/customers/' + custId, {
  method: 'POST', 
  body: JSON.stringify(data), //data being your customer data
  headers:{
    'Content-Type': 'application/json'
  }
}).then(res => res.json())
.then(response => console.log('Success:', JSON.stringify(response)))
.catch(error => console.error('Error:', error));

GET пример:

fetch("/customers/' + custId) //if not specified, fetch defaults to GET
.then(res => res.json())
.then(response => console.log('Success:', JSON.stringify(response)))
.catch(error => console.error('Error:', error));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...