Exemple d'objet de réponse JavaScript onSuccesss
Cet exemple montre les trois variables de l'objet de réponse JavaScript : offerLists, messages et profile.
offerList renvoie une liste non nulle si getOffer ou getOffersForMultipleInteractionPoints est appelé en tant qu'API ou sous la forme d'une commande de traitement par lots. Vous devez toujours tester le null avant d'effectuer des opérations sur cette variable.
Vous devez toujours vérifier le statut de la réponse JavaScript de messages.
Profile renvoie une valeur non nulle si getProfile est appelé en tant qu'API ou sous la forme d'une commande de traitement par lots. Si vous n'utilisez pas getProfile, vous pouvez ignorer cette variable. Vous devez toujours tester le null avant d'effectuer des opérations sur cette variable.
function onSuccess(response)
InteractAPI.ResponseTransUtil._buildResponse = function(response) {
'use strict';
if (!response) return null;
var offerList = null;
//transform offerLists to JS Objects
if (response.offerLists) {
offerList = [];
for (var ofListCt=0; ofListCt<response.offerLists.length;ofListCt++) {
var ofListObj = this._buildOfferList(response.offerLists[ofListCt]);
if (ofListObj) offerList.push(ofListObj);
}
}
var messages = null;
//transform messages to JS Objects
if (response.messages) {
messages = [];
for (var msgCt=0; msgCt<response.messages.length;msgCt++) {
var msgObj = this._buildAdvisoryMessage(response.messages[msgCt]);
if (msgObj) messages.push(msgObj);
}
}
var profile = null;
//transform profile nvps to JS Objects
if (response.profile) {
profile = [];
for (var nvpCt=0; nvpCt<response.profile.length;nvpCt++) {
var nvpObj = this._buildNameValuePair(response.profile[nvpCt]);
if (nvpObj) profile.push(nvpObj);
}
}
return InteractAPI.Response.create(response.sessionId,
response.statusCode, offerList,
profile, response.version,
messages) ;
};