MIME::Base64::URLSafe.3pm

Langue: en

Autres versions - même langue

Version: 2006-01-05 (ubuntu - 08/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

MIME::Base64::URLSafe - Perl version of Python's URL-safe base64 codec

SYNOPSIS

   use MIME::Base64::URLSafe;
   
   $encoded = urlsafe_b64encode('Alladdin: open sesame');
   $decoded = urlsafe_b64decode($encoded);
 
 

DESCRIPTION

This module is a perl version of python's URL-safe base64 encoder / decoder.

When embedding binary data in URL, it is preferable to use base64 encoding. However, two characters ('+' and '/') used in the standard base64 encoding have special meanings in URLs, often leading to re-encoding with URL-encoding, or worse, interoperability problems.

To overcome the problem, the module provides a variation of base64 codec compatible with python's urlsafe_b64encode / urlsafe_b64decode.

Modification rules from base64:

     use '-' and '_' instead of '+' and '/'
     no line feeds
     no trailing equals (=)
 
 

The following functions are provided:

     urlsafe_b64encode($str)
     urlsafe_b64decode($str)
 
 

If you prefer not to import these routines to your namespace, you can call them as:

     use MIME::Base64::URLSafe ();
     $encoded = MIME::Base64::URLSafe::encode($decoded);
     $decoded = MIME::Base64::URLSafe::decode($encoded);
 
 

SEE ALSO

MIME::Base64

Fore more discussion on using base64 encoding in URL applications, see: http://en.wikipedia.org/wiki/Base64#URL_Applications

AUTHOR

Kazuho Oku <kazuho ___at___ labs.cybozu.co.jp>

Copyright (C) 2006 Cybozu Labs, Inc.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.