У меня есть веб-сайт, обслуживаемый с помощью Nginx. Я создал очень простую веб-страницу с тегом p для отображения содержимого файла test.html. У меня есть две кнопки: одна выполняет запрос GET с использованием $ .ajax, а другая выполняет запрос POST с использованием $ .post.
GET-запрос работает нормально, и содержимое файла test.html отображается в моем теге p. Однако, когда я пытаюсь POST к этому же файлу, я получаю сообщение об ошибке в консоли: «Не удалось загрузить ресурс: сервер ответил со статусом 405 (не разрешено)». Запрос POST довольно прост, взят из примера на W3Schools.com - https://www.w3schools.com/JQuery/jquery_ajax_get_post.asp. Так что я озадачен.
Я пытался прочитать и понять, что может означать ошибка 405. Предположительно это означает, что запрос POST не поддерживается этим URL. Но как я позволю этому быть поддержанным?
<p id="content-from-ajax"></p>
<button id="get-content-btn">Get Content</button>
<button id="post-something-btn">Post something</button>
<script type="text/javascript">
$("#get-content-btn").click(function() {
$.ajax({type: "GET",
url: "test.html",
success: function(result) {
$("#content-from-ajax").html(result);
alert("GET successful");
}
});
});
$("#post-something-btn").click(function(){
alert("GRRRR");
$.post("test.html",
{
name: "Donald Duck",
city: "Duckburg"
},
function(data, status){
alert("something worked");
});
});
</script>