Следующий код запускает GET вместо HTTP-запроса POST.
function AddToDatabase() {
this.url = './api/add';
}
AddToDatabase.prototype.postData = function(dataToPost) {
$.ajax({
type: "POST",
url: this.url,
data: dataToPost,
context: this,
success: this.onSuccess
});
};
var AddToDatabase = new AddToDatabase();
data = {data: 'coucou'};
AddToDatabase.postData(data);
Почему и как я могу получить POST?
Я вижу в Google Chrome Inspect и Firefox Inspect, что браузер отправляет GET. Вот из Chrome:
URL-адрес запроса: http: // localhost / SAMPLE-CODES / UPDATE% 20MYSQL / api / add / Метод запроса: GET код состояния: 200 OK
Решено
URL-адрес под названием './api/add' должен был фактически отправлять сообщения в './api/add/index.php'. Оказывается, вызов ./api/add /index.php
или ./api/add /
дает мне запрос POST.
Это был просто неправильный URL, но по какой-то причине я получал успешный запрос GET на '.api / add /'.