Greasemonkey AJAX post scheint nicht zu funktionieren, auch mit @grant angegeben
Mein Skript funktioniert nicht. Der AJAX-call nicht passiert ist. Warum?
//==UserScript==
//@name prova
//@namespace http://blogpagliaccio.wordpress.com/
//@description prova
//@include http://*
//@version 1
//@grant GM_xmlhttpRequest
//@require http://userscripts.org/scripts/source/85398.user.js
//==/UserScript==
//[........... other code]
console.log('start ajax call...');
GM_xmlhttpRequest({
method: "POST",
url: "www.prova.it",
data: {parametro:parametro},
onload: function(response) {
console.log(response.responseText);
},
onerror: function(reponse) {
alert('error');
console.log(reponse);
}
});
Ich zählte die API-Funktion in eine @grant
Richtlinie, aber ich sehe nicht ein AJAX-Aufruf und Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehen die Dokumente, die für
GM_xmlhttpRequest()
.data
dauert nur ein string.Wenn Sie versuchen, senden von nicht-string-Daten zu
data
haben, erhalten Sie eine Fehlermeldung wie:So, müssen Sie die Daten zu verschlüsseln, in einen entsprechenden string. Auch, müssen Sie die entsprechenden
Content-Type
header. Die beiden wichtigsten Arten/- Methoden sind:application/x-www-form-urlencoded
Und
application/json
Codierung und das senden der Daten sieht wie folgt aus für die beiden Methoden:
Form-kodierte Daten:
JSON-serialisierten Daten: