javascript - 收听服务响应 JavaScript

标签 javascript html google-chrome

背景

我正在为网页制作 Chrome 扩展程序。在此网页中,我需要捕获用户发出 POST 请求时服务器发送的响应。

目前,我们正在使用观察者模式来检查 HTML 页面上的更改,但这很笨拙并且会触发多次。

目标

我需要捕获该响应,相应地解析其信息,然后基于它通过更改(向某些表格添加一些颜色、添加其他信息等)对页面的 HTML 执行一些操作。

问题

我的问题是,我不知道有任何 JavaScript 库或纯方法可以让我监听服务器响应,因此我可以解析它们。

我尝试了什么

我尝试了 JavaScript 的 EventSource,但是要让它工作,我需要在服务器中有特定的代码,这不是一个选项。

另一个研究场所正在使用 XHMLRequest 自己发出请求,但是我必须在页面上的每个按钮上都有一个监听器,这样我才能停止其默认操作并通过我的代码执行它,这听起来也不太好。

问题

  1. 是否有任何 JavaScript 工具可以让我检查服务器响应并处理它们?

最佳答案

这样的事情怎么样?

(function(open) {
    XMLHttpRequest.prototype.open = function(m, u, a, us, p) {
        this.addEventListener('readystatechange', function() {
            console.log(this.response);
        }, false);

        open.call(this, m, u, a, us, p);
    };
})(XMLHttpRequest.prototype.open)

您可以重写 open 函数,然后随心所欲地处理 response。

关于javascript - 收听服务响应 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41761403/

相关文章:

javascript - Scriptaculous 排序和句柄的问题(元素排序不正确)

google-chrome - Google Chrome Devtool RGBA 问题

javascript - EmberJS 将动画添加到 DIV 以在操作事件上淡出和淡入

javascript - 鼠标悬停显示div

javascript - Rails 应用程序中日期范围选择器的国际化

javascript - 将彩色图片显示为单色

linux - 如何解决 Ubuntu 14.04 中未满足的依赖关系问题

javascript - input[type=file] 更改事件在 Chrome 上偶尔会丢失

javascript - 如何在 ReactJS 中用另一个字符串和不同的颜色替换一个字符串?

javascript - 为什么我的模型中的默认属性返回未定义