Ho bisogno di fare una richiesta POST a un server esterno dalla mia pagina web utilizzando Javascript. Il corpo e la risposta sono entrambi json. Non riesco a capire come effettuare questa chiamata o quali strumenti utilizzare. Come faccio questa chiamata?Chiamare l'API esterna con Javascript
Questo è quello che ho finora utilizzando jQuery e Ajax:
var body = '{"method":"getViews","params":{"filter":{"operator":"and","clauses":[{"operator":"matches","value":"'+ inputValue +'"}]},"order":[{"field":"name","ascending":true}],"page":{"startIndex":0,"maxItems":5}}}';
var response = $.ajax({
url: "http://" + environment + "/vizportal/api/web/v1/getViews",
method: "post",
dataType:'json',
data: JSON.stringify(body),
headers: {
'Content-Type': 'text/plain',
'X-XSRF-TOKEN' : XSRFToken,
'Cookie': 'workgroup_session_id='+workgroupSessionId+';XSRF-TOKEN='+XSRFToken
},
success:function(response){
alert("success");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("Status: " + textStatus); alert("Error: " + errorThrown);
}
});
Si sta gettando un alert che dice solo "Stato:" e "Errore:"
La console dice che questo "XMLHttpRequest impossibile caricare http://[domain]/vizportal/api/web/v1/getViews.Nell'intestazione 'Access-Control-Allow-Origin' è presente la risorsa richiesta.Nell'origine 'http://[domain]' non è quindi consentito l'accesso.La risposta aveva codice di stato HTTP 405. "
sguardo in ajax. – dandavis
Stai usando qualche particolare libreria JavaScript al momento? – lintmouse
e SOP e CORS – Joseph