使用JavaScript将请求有效负载存储到localStorage

时间:2016-01-06 14:23:53

标签: javascript json xmlhttprequest local-storage

在网站上提交表单后,在Google Chrome的开发者控制台中,有一个应用程序/ json类型的XHR请求,用于将数据发布到另一台服务器。

POST请求包含一个JSON数组,我试图抓取其中一个参数并将其存储在localStorage或sessionStorage中供以后使用。

是否可以在前端仅使用JavaScript来执行此操作?我一直在思考...当请求网址为http://example.com/service时,请抓住JSON对象并选择' name'元素并设置为键' name'在localStorage。

1 个答案:

答案 0 :(得分:0)

您可以使用"全局Ajax事件处理程序"来自jquery:

$(document).ajaxComplete(function(event, xhr, settings) {
  if (settings.url === 'http://example.com/service') {
    // do your processing - grab JSON (from XHR) and store it to localstorage
  }
});

或者您也可以手动修补XMLHttpRequest:

(function() {

    var proxied = window.XMLHttpRequest.prototype.open;

    window.XMLHttpRequest.prototype.open = function() {
        console.log(arguments);

        if (arguments[1].indexOf('/service') > -1) {
          // do your processing
        }

        return proxied.apply(this, [].slice.call(arguments));
    };

})();