Mark Hedges wrote:
[...]

Then the connection output filter can read it from there.

Remove "connection" and I agree, that's much cleaner than putting it in a header.

A similar post-request PerlCleanupHandler or PerlLogHandler
could save any info needed after the request was processed.

But not what the OP is trying to do, which is to save the headers *and* the body of the responses (plus some data about the request).
I think the PerlCleanupHandler or PerlLogHandler are a bit late for that.


You shouldn't overload headers to save this kind of info.

I basically agree, but this was not done in a vacuum.
It's the OP's first mod_perl venture, unless I'm confusing him with someone else. So I did not want to push it by introducing yet another perl module. I assumed that adding a response header was the easiest way to go, in whatever response handler is being used now (and which is not a perl handler).

That's a messy way to write code and that kind of
undisciplined coding is the reason some people hate perl.

That's hard. I love perl and mod_perl.
And I'm sure the OP will love it also, since it gives him a way to achieve what he cannot otherwise.


Is that syntax for $c->pnotes correct from Apache2::ConnectionUtil?
It's not like how $r->pnotes seems to work these days, I would
have expected

I believe the OP's filter is not a connection filter, but a Request output filter (even if he chose the difficult way and is using the buckets version). He is right too, because saving each request data separately would be a lot harder to do in a Connection filter.


So, Dear Original Poster, do you feel ready to add another perl handler *before* your request gets processed, to save some information about the request, in a location where the output filter (running *after* the request gets processed) can find it ? This would allow you to decide, at request time, the filename for the saved response, and have the output filter place it there.
Both parts can co-exist in the same code module.
And there is also an example on the mod_perl site.


Reply via email to