我为Firefox编写了一个附加组件。我需要在http-on-modify-request
观察者中获取请求大小:
var httpChannel = aSubject.QueryInterface(this.C_interfaces.nsIHttpChannel);
if (aTopic == "http-on-modify-request") {
// ??? //
}
我该怎么做?
答案 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;
});