応答 JavaScript オブジェクト onSuccesss の例

この例は、応答 JavaScript オブジェクトの 3 つの変数 offerLists、messages、および profile を示しています。

API として、あるいはバッチ・コマンドの一部として getOffer または getOffersForMultipleInteractionPoints を呼び出した場合、offerList はヌルではないリストを戻します。この変数に対して何らかの操作を行う前に、必ずこれのヌルを検査してください。

常に messages JavaScript 応答の状況を検査してください。

API として、あるいはバッチ・コマンドの一部として getProfile を使用した場合、Profile が非ヌルとして戻されます。getProfile を使用しない場合は、この変数は無視できます。この変数に対して何らかの操作を行う前に、必ずこれのヌルを検査してください。

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) ;
    };