Какой из остальных методов http подходит для переноса пользовательских данных из одной БД в другую? - PullRequest
0 голосов
/ 23 сентября 2019

Я должен предоставить конечную точку отдыха, которая перемещает пользовательские данные из mongoDB в SQLDB.От пользователя этого API-интерфейса не берется никакой информации, а также не отображается никакой информации для потребителя.Просто успешный ответ должен быть отправлен после успешного завершения.Потребитель будет вызывать API всякий раз, когда это необходимо, и единственной работой API является получение любых пользовательских данных из mongoDB и, если они найдены, перемещение в SQLDB.Я немного запутался, какой метод http следует использовать.Согласно моему анализу, метод должен быть идемпотентным.Я запутался между PUT и GET.

Ответы [ 2 ]

1 голос
/ 23 сентября 2019

Ни один из них.

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

0 голосов
/ 23 сентября 2019

Из лучших рекомендаций Microsoft REST End Point

PUT создает или заменяет ресурс по указанному URI.В теле сообщения с запросом указывается ресурс, который будет создан или обновлен.

Итак, вы должны использовать PUT для перемещения данных ресурса, как описано здесь

Запрос PUT создает ресурс или обновляет существующий ресурс.Клиент указывает URI для ресурса.Тело запроса содержит полное представление ресурса.Если ресурс с таким URI уже существует, он заменяется.В противном случае создается новый ресурс, если сервер поддерживает это.Запросы PUT чаще всего применяются к ресурсам, которые представляют собой отдельные элементы, такие как конкретный клиент, а не коллекции.Сервер может поддерживать обновления, но не создание через PUT.Поддерживать ли создание через PUT зависит от того, может ли клиент осмысленно назначить URI ресурсу до того, как он существует.Если нет, то используйте POST для создания ресурсов и PUT или PATCH для обновления.

Это также используется веб-службами Amazon (AWS) https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectUsingREST.html

PUT /bucket HTTP/1.1
Host: atlantic.s3.amazonaws.com
x-amz-copy-source: /pacific/flotsam
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...