finally ! I’ve found an example on stackOverFlow to how to change expiration date, thank’s dstar !
post
For people interested, the same Cloud function but with axios :
const axios = require('axios');
const baseHeaders = {
'X-Parse-Application-Id': "APP-ID",
'X-Parse-Master-Key': "APP-MASTER-KEY",
'Content-Type': 'application/json'
};
Parse.Cloud.define("setExpiration", async (request) => {
const mySessionToken = request.params.sessionToken;
let mySessionID;
//===========================
// get current session ID
//===========================
try {
let response = await axios.get("https://APP-URL/parse/sessions/me",
{
headers: {...baseHeaders, 'X-Parse-Session-Token': mySessionToken}
})
mySessionID = response.data.objectId;
} catch (err) {
console.log("=======================================");
console.log("Get user session Object - On Error : ", err);
console.log("=======================================");
}
//===========================
// change expiration Date : 3 year more (foo exemple)
//===========================
let newSessionYear = new Date(); // ou new Date("2025-01-01")
newSessionYear.setFullYear(newSessionYear.getFullYear() + 3);
let newSessionPayload = {
expiresAt: {"__type": "Date", "iso": newSessionYear.toISOString()}
}
try {
await axios.put("https://APP-URL/parse/sessions/" + mySessionID,
newSessionPayload,
{
headers: {
...baseHeaders,
'X-Parse-Session-Token': mySessionToken,
'Content-Length': JSON.stringify(newSessionPayload).length
}
})
} catch (err) {
console.log("Update session expiration date - On Error : ", err);
}
return "new expiration date updated !";
});