sql >> Database >  >> NoSQL >> MongoDB

Javascript-modulepatroon met Ajax-callback

Maak getOffers retourneer de jqXHR getData retourneert zoals hieronder -

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

})();

De jqXHR object geretourneerd door $.ajax({}) is een Promise -Wanneer u een succesreactie krijgt voor het Ajax-verzoek - u kunt een succeshandler als deze koppelen - buiten uw ajax-verzoek

myApp.getOffers({
    'showData': 1,
    'myLocation': "Location1",
    'clientID': "Client1"
}).done(function (data, textStatus, jqXHR) {

    // work with DOM here
});

Meer over JQuery Uitgestelde/Promises hier -

Ook heb je getData . gemaakt , getOffers globaal door var . te missen vooraan tijdens de aangifte.

Volgens uw opmerking over het gebruik van POST in plaats van GET , de algemene vuistregel is - GET is voor het ophalen van gegevens, POST om op te slaan - alleen omdat je POST gebruikt dat betekent niet dat iemand de gegevens die u verzendt niet kan ruiken, het is slechts een onderdeel van de aanvraagtekst in plaats van de aanvraag-URL. Als u denkt dat de gegevens die u verzendt erg gevoelig zijn, moet u overwegen om SSL(HTTPS) in te schakelen. voor uw app.




  1. Verkort de uitvoeringstijd van taken van sidekiq

  2. Redis installeren op Debian 9

  3. installeer mongoDB (onderliggend proces mislukt, afgesloten met foutnummer 100)

  4. Hoe een matrixveld in document samen te voegen in Mongo-aggregatie