УСПОКОИТЕЛЬНЫЕ СООБЩЕНИЯ, сделайте Вас, POST возражает против исключительного или множественного числа Uri?

Здесь это находится в C#

int[,] array = new int[4,4] {
    { 1,2,3,4 },
    { 5,6,7,8 },
    { 9,0,1,2 },
    { 3,4,5,6 }
};

int[,] rotated = RotateMatrix(array, 4);

static int[,] RotateMatrix(int[,] matrix, int n) {
    int[,] ret = new int[n, n];

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < n; ++j) {
            ret[i, j] = matrix[n - j - 1, i];
        }
    }

    return ret;
}
40
задан cdeszaq 2 May 2013 в 13:49
поделиться

6 ответов

Поскольку POST - это операция «добавления», может быть более английским для POST to / products , поскольку вы добавляете новый продукт к существующему списку продуктов.

Пока вы стандартизировали что-то в своем API, я думаю, что этого достаточно.

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

27
ответ дан 27 November 2019 в 01:53
поделиться

Обычно вы используете POST для создания ресурса, когда вы заранее не знаете идентификатор ресурса, и PUT, когда знаете. Таким образом, вы должны отправить POST в / products или PUT в /products/{new-id}.

. В обоих случаях вы вернете 201 Created, а с POST дополнительно вернете заголовок Location, содержащий URL-адрес нового созданный ресурс (при условии, что он был успешно создан).

11
ответ дан 27 November 2019 в 01:53
поделиться

Вы ПУБЛИКАЕТЕ или ПОЛУЧАЕТЕ одно: единственный ПРОДУКТ.

Иногда вы ПОЛУЧАЕТЕ без определенного продукта (или с критериями запроса). Но вы все равно говорите это в единственном числе.

Вы редко работаете с множественными формами имен. Если у вас есть коллекция (Каталог товаров), это один Каталог.

3
ответ дан 27 November 2019 в 01:53
поделиться
текстовое поле и выберите этот переключатель.
  • Нажмите «Найти»
  • . В результате появится список файлов.
  • Выберите элементы для отмены
  • Щелкните правой кнопкой мыши и выберите «Отменить»
  • Нажмите «Да», когда будет предложено «Отменить все» выбранные изменения? "
  • Team Foundation Sidekicks

    Другой вариант - использовать приложение Team Foundation Sidekicks, которое можно получить здесь: http://www.attrice.info/cm/tfs/

    У него есть дополнительный элемент статуса, который позволяет вам запрашивать проверенные рабочие элементы. После выбора рабочего элемента можно использовать кнопки «Отменить отложенное изменение» и «Отменить блокировку».

    Права

    Имейте в виду, что вам потребуются соответствующие права. Разрешения называются «Отменить изменения других пользователей» и «Разблокировать изменения других пользователей». Эти разрешения можно просмотреть: Язык не указан, но в Java вы можете сделать что-то вроде этого.

    WebServiceContext ws_ctx;
    MessageContext ctx = ws_ctx.getMessageContext();
    String action = (String)ctx.get(MessageContext.HTTP_REQUEST_METHOD);
    if(action.equals("GET")
      // do something
    else if(action.equals("POST")
      // do something
    

    Таким образом вы можете проверить тип запроса, который был отправлен веб-службе, и выполнить соответствующее действие на основе метода запроса.

    -2
    ответ дан 27 November 2019 в 01:53
    поделиться

    В дизайне RESTful существует несколько шаблонов создания новых ресурсов. Выбранный вами шаблон во многом зависит от того, кто отвечает за выбор URL-адреса для вновь созданного ресурса.

    Если клиент отвечает за выбор URL-адреса, то клиент должен ПОСТАВИТЬ на URL-адрес ресурса. Напротив, если сервер отвечает за URL-адрес ресурса, то клиент должен выполнить POST на «заводской» ресурс. Обычно ресурс фабрики является родительским ресурсом создаваемого ресурса и обычно представляет собой коллекцию, имеющую множественное число.

    Итак, в вашем случае я бы рекомендовал использовать / products

    3
    ответ дан 27 November 2019 в 01:53
    поделиться

    Я бы публиковал только в единственном числе / product . Слишком легко перепутать два URL-адреса и запутаться или сделать ошибку.

    0
    ответ дан 27 November 2019 в 01:53
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: