Skip Menu |

This queue is for tickets about the URI CPAN distribution.

Report information
The Basics
Id: 4318
Status: resolved
Priority: 0/
Queue: URI

People
Owner: Nobody in particular
Requestors: jamie [...] kmtechnologies.com
Cc:
AdminCc:

Bug Information
Severity: Wishlist
Broken in: (no value)
Fixed in: (no value)



Subject: _userpass for http[s]
a username and a password is valid in an HTTP uri. It can be used for basic authentication. I found I needed it because our product will be using URIs for all file resources, with a wrapper that deals with remote files, making a file's physical location transparent to the calling routine. Anyways, we needed a way to store the authentication info, and I thought in the URI was the smartest place.
--- http_old.pm 2003-03-30 23:40:48.000000000 -0500 +++ http.pm 2003-11-06 17:21:16.668425600 -0500 @@ -1,13 +1,17 @@ package URI::http; require URI::_server; -@ISA=qw(URI::_server); +require URI::_userpass; +@ISA=qw(URI::_server URI::_userpass); use strict; use vars qw(%unreserved_escape); sub default_port { 80 } +sub _user { shift->SUPER::user(@_); } +sub _password { shift->SUPER::password(@_); } + sub canonical { my $self = shift;
[guest - Thu Nov 6 17:37:00 2003]: Show quoted text
> a username and a password is valid in an HTTP uri. It can be used for > basic authentication.
It's not valid according to RFC 2616 which is the official HTTP spec. Many HTTP implementation supports them and map them to basic authentication. LWP is among them. It is a deliberate choice that URI does not support them, but it does give you userinfo. I don't plan on applying this patch. Things you can do: - work with $uri->userinfo directly - push _userpass onto @URI::http::ISA in you app.