Changeset 12871

Show
Ignore:
Timestamp:
05/31/08 03:05:29 (4 months ago)
Author:
yusukebe
Message:

request_url メソッドの引数を変更

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/WebService-Simple/trunk/lib/WebService/Simple.pm

    r12380 r12871  
    2929        Carp::croak("base_url is required"); 
    3030    my $basic_params = delete $args{params} || delete $args{param} || {}; 
     31    my $debug  = delete $args{debug} || 0; 
     32 
    3133    my $response_parser = delete $args{response_parser} || 
    3234        $class->config->{response_parser}; 
     
    6769    $self->{response_parser} = $response_parser; 
    6870    $self->{cache} = $cache; 
     71    $self->{debug} = $debug; 
    6972    return $self; 
    7073} 
     
    115118 
    116119sub request_url { 
    117     my ($self, $url, %extra) = @_; 
    118     my $uri = URI->new($self->base_url); 
    119  
    120     if($url){ 
    121         $url =~ s!^/!!; 
    122         $uri->path( $uri->path . $url); 
    123     } 
    124  
    125     map { utf8::encode($extra{$_}) if utf8::is_utf8($extra{$_}) } keys %extra; 
    126     $uri->query_form( %{$self->basic_params}, %extra ); 
    127  
    128     return $uri; 
    129 } 
    130  
    131 sub get 
    132 { 
    133120    my $self = shift; 
    134121    my ($url, %extra); 
     
    144131    } 
    145132 
    146     my $uri = $self->request_url($url, %extra); 
     133    my $uri = URI->new($self->base_url); 
     134    if($url){ 
     135        $url =~ s!^/!!; 
     136        $uri->path( $uri->path . $url); 
     137    } 
     138 
     139    map { utf8::encode($extra{$_}) if utf8::is_utf8($extra{$_}) } keys %extra; 
     140    $uri->query_form( %{$self->basic_params}, %extra ); 
     141 
     142    return $uri; 
     143} 
     144 
     145sub get { 
     146    my $self = shift; 
     147 
     148    my $uri = $self->request_url(@_); 
     149    print  "Request URL is $uri\n" if $self->{debug}; 
    147150 
    148151    my @headers = @_; 
     
    230233    my $flickr = WebService::Simple->new( 
    231234        base_url => "http://api.flickr.com/services/rest/", 
    232         param    => { api_key => "your_api_key", } 
     235        param    => { api_key => "your_api_key", }, 
     236        # debug    => 1 
    233237    ); 
    234238 
    235239Create and return a new WebService::Simple object. 
    236240"new" Method requires a base_url of Web Service API. 
     241If debug is set, dump a request URL in get or post method. 
    237242 
    238243=item get(I<[$extra_path,] $args>) 
     
    254259Send POST request. 
    255260 
    256 =item request_url(I<[%extra_path,] $args>) 
     261=item request_url(I<$extra_path, $args>) 
    257262 
    258263Return reequest URL.