• בלוג
  • שאלות מראיונות עבודה - שמירת מטמון לבקשות Ajax

שאלות מראיונות עבודה - שמירת מטמון לבקשות Ajax

הנה חידה קטנה לסיים את השבוע - הקוד הבא אמור לעזור לנו לממש Cache לבקשות Ajax. במקום שלקוח יפנה ל jQuery כדי לשלוח בקשת Ajax הוא יוכל לפנות לקוד שלנו שגם ישמור את התשובה, וככה בפעם השניה שלקוח פונה לא נצטרך לפנות לשרת כדי לקבל את אותו מידע.

מצאו שתי בעיות במנגנון וספרו איך הייתם מתמודדים אתן.

הקוד:

const cache = {};

const ajaxService = {
    get(url) {
        return new Promise((resolve, reject) => {
            if (typeof cache[url] !== 'undefined') {
                return resolve(cache[url]);
            } else {
                $.get(url).then(function(res) {
                    cache[url] = res;
                    return resolve(cache[url]);
                }).catch(err) {
                    return reject(err);
                };
            }
        });
    },
};

export default ajaxService;