如何在mozilla插件中获取请求大小?

时间:2012-01-17 23:44:15

标签: firefox-addon

我为Firefox编写了一个附加组件。我需要在http-on-modify-request观察者中获取请求大小:

var httpChannel = aSubject.QueryInterface(this.C_interfaces.nsIHttpChannel);
if (aTopic == "http-on-modify-request") {
  // ??? //
}

我该怎么做?

1 个答案:

答案 0 :(得分:0)

要获取POST数据的长度,您将获得Content-Length标题:

var contentLength = parseInt(httpChannel.getRequestHeader("Content-Length"), 10) || 0;

如果您还需要计算发送标题的大小,则必须通过它们:

var headerLength = 0;
httpChannel.visitRequestHeaders(function(header, value)
{
  headerLength += header.length + ": ".length + value.length + "\r\n".length;
});