AJAX запрос данных публикации в теле вместо конкатенации URL - PullRequest
0 голосов
/ 27 мая 2020

Я вижу, что многие веб-сайты выполняют свои запросы путем объединения данных в своих URL-адресах, например: example.com/api?data=111.

На моем веб-сайте я обрабатываю запрос другим способом, через AJAX:

return $.ajax({ url: '../api.php',
                    data: {data: '111'},
                    type: 'post'
    });

Мне было интересно, есть ли в моем методе какой-либо недостаток или его можно использовать как стандартный метод конкатенации URL-адресов.

Обновление контекста

function createAJAXRequestToGetCategories() {
  return $.ajax({
    url: '../server.php',
    data: {
      method: 'requestCategories'
    },
    type: 'post'
  });
}
ajaxRequest = createAJAXRequestToGetCategories();
ajaxRequest.done(functionToExecute);
functionToExecute(responseData) {}

1 Ответ

0 голосов
/ 27 мая 2020

Некоторые различия, которые приходят на ум:

  1. Вы не можете использовать тело таким же образом во время запросов GET, очевидно, что это не то, что вы делаете выше, но вы, вероятно, видите множество запросов это запросы GET
  2. Отладка, когда кто-то нажимает /api.php?action=create.user и получает 500 s в ваших журналах, отлаживать несколько легче, чем все ваши конечные точки в пределах /api.php
  3. символов URL, только на прошлой неделе мне удалось на go превысить лимит символов в запросе конечной точки, т.е. /api.php?id=1,2,3,4,5... (общий лимит составляет 2083 символа), использование тела в некоторой степени обходит это (ваш сервер по-прежнему будет ограничивать отправляемые данные в определенной степени )

В любом случае может быть больше убедительных аргументов. Обычно я использую параметры URL для целей / идентификации и тело для фактических данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...