我正在修改firefox的inlinedisposition扩展。以下是实际修改标题的代码段:
_httpResponse: function( chan )
{
var disp = "";
try {
chan = chan.QueryInterface(Components.interfaces.nsIHttpChannel);
disp = chan.getResponseHeader("Content-Disposition");
} catch (e) { }
if (chan.loadFlags & Components.interfaces.nsIChannel.LOAD_DOCUMENT_URI && this._re.test(disp))
{
chan.setResponseHeader("Content-Disposition", disp.replace(this._re, "inline"), false);
chan.setResponseHeader("Content-Type", "application/fgdownload", false); //not working
}
}
我为修改内容类型而添加的行无效。然而,内容处理工作正常。
答案 0 :(得分:2)
Content-Type
是无法修改的响应标头之一。其他人是Content-Lenght
,Content-Encoding
,Trailer
和Transfer-Encoding
。
但是,您可以更改nsIHttpChannel(some restrictions apply)的继承contentType
属性。