Hieronder staat mijn Ajax-verzoek voor een DELETE
-verzoek:
deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) {
$.ajax({
url: urlCall,
type: 'DELETE',
headers: {"Id": Id, "bolDeleteReq" : bolDeleteReq},
success: callback || $.noop,
error: errorCallback || $.noop
});
}
Is er een andere manier om de gegevens door te geven dan in de headers
?
Antwoord 1, autoriteit 100%
Lees dit probleem met bugs: http://bugs.jquery.com/ticket/11586
De
DELETE
-methode vraagt de oorspronkelijke server om de resource geïdentificeerd door de Request-URIte verwijderen.
Dus u moet de gegevens in de URI doorgeven
$.ajax({
url: urlCall + '?' + $.param({"Id": Id, "bolDeleteReq" : bolDeleteReq}),
type: 'DELETE',
success: callback || $.noop,
error: errorCallback || $.noop
});
Antwoord 2
Ik heb het data-attribuut met succes kunnen passeren in de ajax-methode. Hier is mijn code
$.ajax({
url: "/api/Gigs/Cancel",
type: "DELETE",
data: {
"GigId": link.attr('data-gig-id')
}
})
De link.attrmethode retourneerde eenvoudig de waarde van ‘data-gig-id’.
Antwoord 3
deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) {
$.ajax({
url: urlCall,
type: 'DELETE',
data: {"Id": Id, "bolDeleteReq" : bolDeleteReq},
success: callback || $.noop,
error: errorCallback || $.noop
});
}
Opmerking: het gebruik van headers
is geïntroduceerd in JQuery 1.5.:
Een kaart van extra kop-sleutel/waarde-paren om mee te sturen met het verzoek. Deze instelling wordt ingesteld voordat de functie beforeSend wordt aangeroepen; daarom kunnen alle waarden in de headers-instelling worden overschreven vanuit de beforeSend-functie.