Обнаружение на стороне клиента метода HTTP-запроса

Возможно ли обнаружить метод HTTP-запроса (например, GET или POST) страницы из JavaScript? Если да, то как?

Ответ 1

Одним словом - No

Ответ 2

Я так не верю. Если вам нужна эта информация, я предлагаю включить элемент <meta>, сгенерированный на сервере, который вы можете проверить с помощью JavaScript.

Например, с PHP:

<meta id="request-method" name="request-method" content="<?php echo htmlentities($_SERVER['REQUEST_METHOD']); ?>">
<script type="text/javascript">
    alert(document.getElementById("request-method").content);
</script>

Ответ 3

Вы можете проверить ссылку на страницу:

document.referrer == document.URL

Если это та же самая страница, вполне вероятно, что пользователь отправил форму.

Конечно, для этого требуется

  • что вы не ссылаетесь на страницу на себя (что необходимо для доступности в любом случае)
  • чтобы форма была отправлена ​​на ту же страницу, что и на
  • чтобы пользователь не отключил реферер

Ответ 4

Если вам нужна эта функциональность, попросите сервер определить, какой метод был использован, а затем изменить что-то в DOM, которое вы затем можете прочитать позже.

Ответ 5

Вы не можете сделать это для обычной записи/получения, однако вы можете получить эту информацию, если используете вызов xmlhttp и используете getResponseHeader