Ακολούθησα το σεμινάριο όπως αναφέρεται στον σύνδεσμο αυτό. Στον παρακάτω κώδικα για κάποιο λόγο τα δεδομένα δεν προσαρτώνται στο url ως παράμετροι, αλλά αν τα ορίσω απευθείας στο url χρησιμοποιώντας /?field1="hello"
λειτουργεί.
$.ajax({
url: 'superman',
type: 'POST',
data: { field1: "hello", field2 : "hello2"} ,
contentType: 'application/json; charset=utf-8',
success: function (response) {
alert(response.status);
},
error: function () {
alert("error");
}
});
Θα σας συνιστούσα να χρησιμοποιήσετε τη σύνταξη $.post
ή $.get
της jQuery για απλές περιπτώσεις:
$.post('superman', { field1: "hello", field2 : "hello2"},
function(returnedData){
console.log(returnedData);
});
Αν πρέπει να πιάσετε τις περιπτώσεις αποτυχίας, κάντε απλά αυτό:
$.post('superman', { field1: "hello", field2 : "hello2"},
function(returnedData){
console.log(returnedData);
}).fail(function(){
console.log("error");
});
Επιπλέον, αν στέλνετε πάντα ένα αλφαριθμητικό JSON, μπορείτε να χρησιμοποιήσετε $.getJSON ή $.post με μία ακόμη παράμετρο στο τέλος.
$.post('superman', { field1: "hello", field2 : "hello2"},
function(returnedData){
console.log(returnedData);
}, 'json');
Δοκιμάστε να χρησιμοποιήσετε τη μέθοδο GET,
var request = $.ajax({
url: 'url',
type: 'GET',
data: { field1: "hello", field2 : "hello2"} ,
contentType: 'application/json; charset=utf-8'
});
request.done(function(data) {
// your success code here
});
request.fail(function(jqXHR, textStatus) {
// your failure code here
});
Δεν μπορείτε να δείτε τις παραμέτρους στη διεύθυνση URL με τη μέθοδο POST.
Επεξεργασία:
Ανακοίνωση απομάκρυνσης: Οι λειτουργίες jqXHR.success(), jqXHR.error() και jqXHR.complete() καταργούνται από την jQuery 3.0. Μπορείτε να χρησιμοποιήσετε jqXHR.done(), jqXHR.fail() και jqXHR.always() αντί αυτών.
Σε μια POST αίτηση, οι παράμετροι αποστέλλονται στο σώμα της αίτησης, γι' αυτό και δεν τις βλέπετε στη διεύθυνση URL.
Αν θέλετε να τις δείτε, αλλάξτε
type: 'POST',
σε
type: 'GET',
Σημειώστε ότι τα προγράμματα περιήγησης διαθέτουν εργαλεία ανάπτυξης που σας επιτρέπουν να βλέπετε τις πλήρεις αιτήσεις που εκδίδει ο κώδικάς σας. Στο Chrome, βρίσκεται στον πίνακα "Δίκτυο".