Vytvořte getOffers
vrátí jqXHR getData
vrátí jako níže -
var myApp = (function () {
var Var1 = [];
var getData = function (sendData) {
return $.ajax({
type: "POST",
url: URL,
data: sendData,
datatype: "json",
success: function (results) {}
});
};
var getOffers = function (sendData) {
// return the jqXHR returned by getData
return getData(sendData);
};
return {
getOffers: getOffers
};
})();
jqXHR
objekt vrácený $.ajax({})
je Promise
-Když obdržíte úspěšnou odpověď na požadavek Ajax - můžete připojit obslužný program úspěchu, jako je tento - mimo vaši žádost ajax
myApp.getOffers({
'showData': 1,
'myLocation': "Location1",
'clientID': "Client1"
}).done(function (data, textStatus, jqXHR) {
// work with DOM here
});
Více o Jquery Deferreds/Promises zde -
Také jste vytvořili getData
, getOffers
globální tím, že chybí var
vpředu během deklarace.
Podle vašeho komentáře k použití POST
místo GET
, obecné pravidlo je - GET
je pro načtení dat, POST pro uložení - jen proto, že používáte POST
to neznamená, že někdo nemůže vyčuhovat data, která posíláte, je to jen část těla požadavku místo adresy URL požadavku. Pokud si myslíte, že odesílaná data jsou opravdu citlivá, měli byste se podívat na povolení SSL(HTTPS)
pro vaši aplikaci.