首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从firefox插件中的表单帖子中访问原始数据响应?

如何从firefox插件中的表单帖子中访问原始数据响应?
EN

Stack Overflow用户
提问于 2018-07-03 02:34:29
回答 1查看 677关注 0票数 0

我正在尝试构建一个firefox插件,用户填写表单并将其提交给服务器。我想知道如何从服务器访问响应。在这个例子中,响应是“成功”,"createAccount“

在单击submit之后,在原始数据选项卡中,我可以在这个小弹出窗口中看到数据。(见图)。

我只是不知道如何从我的代码中访问它。这看起来应该很简单,但我想不出来。

我试图重写onsubmit和onclick方法/侦听器,通过ajax/XMLHttpRequest路由它们,但是我得到了一个内容安全错误(:页面的设置阻止了self上的资源加载(“script-src”))。源:按钮元素上的onclick属性。)

我看过其他这样的帖子,没有一篇是专门用于评论形式的回复的。

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-04 20:31:40

答案是使用webRequests.filterResponseData

代码是这样的:

代码语言:javascript
复制
    var rawdata;
    var listener = function(result){
      let filter = chrome.webRequest.filterResponseData(result.requestId);  //https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/webRequest/filterResponseData
      filter.ondata = event => {
      self.data = {
          data: Array.apply(null, new Uint8Array(event.data)),

          contentType: result.type
      };
      rawdata = arrayBufferToData.toJSON(event.data);  

      }
       filter.onstop = event => {
       filter.disconnect();
      }

    }
  browser.webRequest.onHeadersReceived.addListener(listener, {urls: ["<all_urls>"]},["blocking"]);

然后,rawdata将具有正确的值。感谢你为我指明了正确的方向。

arrayBufferToData来自这里

不幸的是,这只适用于firefox,而不是chrome。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51145897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档