Opened 17 years ago

Last modified 9 years ago

#24 new enhancement

provide URL-safe FURLs — at Initial Version

Reported by: Brian Warner Owned by:
Priority: major Milestone: undecided
Component: network Version: 0.1.6
Keywords: Cc:

Description

For several places in Tahoe we need to pass FURLS around in HTTP URL query arguments. The fact that normal FURLs look a lot like HTTP URLs causes problems with this: I've found that even after you URL-quote the FURL, the slashes in it can cause problems for HTTP reverse-proxies (what I observed was that the proxy un-escaped the URL and got confused by the slashes in the query arguments, thinking they were part of the query itself).

To this end, it would be convenient if there were a URL-safe form of a FURL, preferably entirely base32 characters (with perhaps a few other URL-safe characters as delimiters, like maybe a decimal point or comma or something).

I'd like these FURLs to be passable to Tub.getReference just like the normal pb:// FURL.

Zooko describes this in terms of "compressed FURLs", which are packed, non-human readable, and don't necessarily need to be self-describing. I'm hoping he'll chime in with his thoughts on this ticket.

I'm not sure what the best API for this would be.. maybe Tub.compressFURL(oldfurl) ? It doesn't need to be a method of the Tub, really.. foolscap.compressFURL(oldfurl) could work too.

Change History (0)

Note: See TracTickets for help on using tickets.