Вы не должны использовать GET.GET-запросы должны быть safe , что означает, что они предназначены только для поиска информации и не должны изменять состояние сервера.(то есть такие вещи, как ведение журнала, в порядке, но вещи, которые фактически обновляют состояние приложения, - нет-нет.) Подумайте о том, что сканер просматривает ваше приложение.Все, что вы не возражаете против того, чтобы сканер проходил, подходит для GET, но это не похоже на вашу ситуацию (потому что вы сказали: «запустите пару разных процессов», но я могу неправильно истолковать ваш вариант использования).
Это оставляет PUT, DELETE и POST.PUT и DELETE должны быть идемпотентными , что означает, что несколько идентичных запросов должны иметь тот же эффект, что и один запрос.Поэтому, если у вас есть запрос, который обновил имя человека, например, если вы назвали его один или 100 раз, имя человека все равно будет таким же, поэтому оно идемпотентно.
POST - самый гибкий глагол,Если процессы, которые вы запускаете, не являются безопасными или идемпотентными (или даже если они есть), вы можете использовать POST, который просто не гарантирует ничего о безопасности или идемпотентности.Существуют следующие недостатки:
- Если вы используете POST, когда GET более семантически корректен, он менее коммуникативен относительно цели вашего запроса, поскольку POST обычно означает, что вы отправляете полезную нагрузку.
- Вы просто не смогли воспользоваться преимуществами инфраструктуры кэширования в Интернете, которая делает его настолько масштабируемым.