Hoe kun je in jQuery een ajax call doen?
Tegenwoordig maakt jQuery niet meer gebruik van z'n eigen Promise objecten, maar van de standaard objecten.
function getObjects(accessToken) {
return $.ajax({
headers: {
'Authorization': 'bearer ' + accessToken
},
type: "POST",
cache: false,
contentType: 'application/json; charset=UTF-8',
url: 'https://server/api/Object/Query?apikey=meuk&version=1.0',
data: JSON.stringify({
"filter": [
{
"Criteria": "value"
}
],
"othercriteria": null
}),
dataType: "json"
});
}
Je kunt dan doen:
async function loginREST(username, password) {
let factory = new TokenFactory(username, password);
factory.getAccessToken().then(async (accessToken) => {
let objects = await getObjects(accessToken);
console.log(devices);
}).catch(function (err) {
throw err;
});
}
Ter inspiratie voor een crossdomain ajax call:
$.ajax({
crossDomain: true,
xhrFields: {
withCredentials: true
},
url: url + '?type=html',
timeout: 30000,
headers: { 'X-Element-Id': xElementId }
}).then(function (response) {
// code
}).fail(function () {
// code
});