firefox插件更改响应代码

firefox插件更改响应代码,firefox,firefox-addon,firefox-addon-sdk,Firefox,Firefox Addon,Firefox Addon Sdk,我有一个扩展正在检查http中关于检查响应的listener中的响应。在监听器中,可以通过更改标题,也可以通过更改响应内容 但是如何在检查响应的http中更改响应代码(例如从407更改为200) 一些代码: const { Ci, Cu, Cc, Cr } = require('chrome'); Cu.import('resource://gre/modules/Services.jsm'); var observer = { observe: function(aSubject, a

我有一个扩展正在检查
http中关于检查响应的
listener中的响应。在监听器中,可以通过更改标题,也可以通过更改响应内容

但是如何在检查响应的
http中更改响应代码(例如从407更改为200)

一些代码:

const { Ci, Cu, Cc, Cr } = require('chrome');

Cu.import('resource://gre/modules/Services.jsm');

var observer = {
  observe: function(aSubject, aTopic, aData) {
    if (aTopic == 'http-on-examine-response') {
        console.log('we are in observer http-on-examine-response');
        var httpChannel = aSubject.QueryInterface(Ci.nsIHttpChannel);
        if(httpChannel.responseStatus == 407){
            httpChannel.responseStatus = 200; // <-- this is not working
        }
    }

  }
};

Services.obs.addObserver(observer, 'http-on-examine-response', false);


exports.onUnload = function (aData, aReason) {
  Services.obs.removeObserver(observer, 'http-on-examine-response');
};
const{Ci,Cu,Cc,Cr}=require('chrome');
Cu.进口resource://gre/modules/Services.jsm');
var观察员={
观察:功能(对象、特应性、适应性){
如果(aTopic==“http on inspect response”){
log('我们在检查响应时处于观察者http');
var httpChannel=asObject.QueryInterface(Ci.nsIHttpChannel);
如果(httpChannel.responseStatus==407){

httpChannel.responseStatus=200;//您必须在修改响应时使用
http
1)我修复了我的错误,在检查响应时必须有
http
2)此代码中没有类似于修改响应时的
http
的事件:此事件未被触发。哦,我的错误,是
http on examine-response
,请尝试。请参阅此处的文档-不,没有更改Response代码的方法。该读取器仅使用Response正文(Response正文中第一个“\r\n\r\n”之后的avrything),而Response代码位于正文的第一行。您不能使用
setResponseHeader
来设置它吗?