Какой HTTP-метод используется для этого клиентского запроса?

64
9

Я разрабатываю веб-службу REST в Java, которая по запросу клиентов обрабатывает тело запроса и передает результат клиенту. Тело запроса, отправленное клиентом, состоит из программы GO (язык программирования), которую сервер выполняет (запускает) на серверной машине и возвращает стандартный вывод программы обратно клиенту. Теперь, поскольку тело запроса содержит некоторый текст (программу), я не могу использовать метод HTTP GET для этого. Я могу использовать PUT или POST, но я узнал, что они (PUT и POST) обычно используются для обновления/создания ресурса. Поскольку, я не создаю никакого ресурса здесь, это концептуально правильно использовать PUT или POST. Если нет, то какой метод HTTP я должен использовать?

спросил(а) 2021-01-19T14:46:33+03:00 6 месяцев, 1 неделя назад
1
Решение
77

Рассматривая проблему, которую вы решаете и сравниваете с существующим производственным решением, я предлагаю вам использовать POST в вашем сценарии.

    Рассуждение - Пример Производственный код, решающий аналогичную проблему: -

Предполагая, что проблема, которую вы пытаетесь решить, заключается в следующем: - Клиент отправляет код в язык программирования Go, ваш сервер компилирует его, запускает его и затем выводит. Предполагая также, что он несколько похож на многие веб-сайты для онлайн-кодирования, такие как hackerEarth, их документацию по API и примерный код python, показывают, что мы можем использовать HTTP: POST для отправки кода на сервер для его обработки.

POST предназначен для обеспечения единообразного метода для покрытия следующих функций: Предоставление блока данных, например, результата отправки формы, процессу обработки данных;

Метод PUT запрашивает, чтобы закрытый объект хранился в запрошенном Request-URI. Если Request-URI ссылается на уже существующий ресурс, закрытый объект СЛЕДУЕТ считаться модифицированной версией той, которая находится на исходном сервере.

    Ссылаясь на приведенные выше утверждения, мы можем заключить, что в контексте этой проблемы, которую вы решаете, вы запрашиваете сервер для обработки данных для закрытого объекта, поэтому вы можете использовать POST.

ответил(а) 2021-01-19T14:46:33+03:00 6 месяцев, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема