Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript将请求负载存储到localStorage_Javascript_Json_Xmlhttprequest_Local Storage - Fatal编程技术网

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

使用JavaScript将请求负载存储到localStorage,javascript,json,xmlhttprequest,local-storage,Javascript,Json,Xmlhttprequest,Local Storage,在网站上提交表单后,在Google Chrome的开发控制台中有一个application/json类型的XHR请求,将数据发布到另一台服务器 POST请求包含一个JSON数组,我正在尝试获取其中一个参数,并将其存储在localStorage或sessionStorage中,以供以后使用 是否可以只在前端使用JavaScript来实现这一点?我的想法是这样的……当请求url为时,抓取JSON对象并选择“name”元素,然后在localStorage中设置为key“name”。您可以使用jquer

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

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

是否可以只在前端使用JavaScript来实现这一点?我的想法是这样的……当请求url为时,抓取JSON对象并选择“name”元素,然后在localStorage中设置为key“name”。

您可以使用jquery中的“全局Ajax事件处理程序”:

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

})();

我想用ajaxComplete,但我一直只使用纯JavaScript。这就是我不知道如何从XHR请求中获取JSON的地方