[Catalyst] Re: Response traits.

Bill Moseley moseley at hank.org
Fri Nov 1 17:29:15 GMT 2013


On Fri, Nov 1, 2013 at 8:31 AM, John Napiorkowski <jjn1056 at yahoo.com> wrote:

> I think a patch that made sure strings being set to location conformed to
> the expected standard would be very welcomed!
>
> on the other hand I thought this was also caught by
>
> https://metacpan.org/pod/Plack::Middleware::Lint
>

Yes, you might be right about that.   That's probably the right (final)
place to catch this.   From the framework point of view I'm not quite clear
what $res->redirect should accept.   That is, if it contains \n should it
get precent-encoded?   Maybe it should (have) only accept a URI object?
And only a fully-qualified URI.    And what if redirect is passed wide
characters?  Maybe it's legit to pass wide characters encoded in some
format.


>
>
> as well?  In any case Catalyst response could reject any attempts to set
> ->location with incorrect values.
>
> The only thing is that people could still probably get around it by
> setting headers directly.  I think for now we'll say if you do that we ha=
ve
> to assume you know what you are doing!
>

One would hope.   Experience often shows that manually doing it often is an
indicator of not knowing what one is doing.   The framework's benefit is so
you don't screw things up.




>
> John
>
>
>   On Thursday, October 31, 2013 7:03 PM, Bill Moseley <moseley at hank.org>
> wrote:
>
>
>
> On Thu, Oct 31, 2013 at 2:34 PM, John Napiorkowski <jjn1056 at yahoo.com>wro=
te:
>
> I'm currently recommending people take advantage of native PSGI support in
> the newer Catalyst and use Middleware for when you need to munge and or
> alter the response (if its being done globally).  The interface is more
> straightforward.
>
>
> Do you think that Catalyst::Response should validate the location provided
> to redirect()?
>
> The issue that came up was a newline was ending up in the location
> provided which resulted in a split response<http://en.wikipedia.org/wiki/=
HTTP_response_splitting>.
>    I was thinking of doing something like:
>
> $self->location( URI->new( $location )->as_string );
>
> But with perhaps a bit more error handling.
>
>
>
>
>
>
>
> johnn
>
>
>    On Thursday, October 31, 2013 11:33 AM, Bill Moseley <moseley at hank.org>
> wrote:
>
> On Thu, Oct 31, 2013 at 12:51 AM, Aristotle Pagaltzis <pagaltzis at gmx.de>w=
rote:
>
> CatalystX::RoleApplicator
>
>
> Thanks.  That was what I was looking for.   Just missed it when looking.
>
>
> --
> Bill Moseley
> moseley at hank.org
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
>
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
>
>
>
>
> --
> Bill Moseley
> moseley at hank.org
>
>
>


-- =

Bill Moseley
moseley at hank.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20131101/66bd7=
10f/attachment.htm


More information about the Catalyst mailing list