2013-03-03 3 views
0

Я выкладываю 3 фотографий в Tumblr с помощью PERL API ...сообщение несколько фотографий на Tumblr через API с Perl

У меня есть этот код работает хорошо с одной картиной:

use LWP::Authen::OAuth; 
use Data::Dumper; 

my $ua = LWP::Authen::OAuth->new(
      oauth_consumer_key => 'xxx', 
      oauth_consumer_secret => 'xxx', 
      oauth_token => 'xxx', 
      oauth_token_secret => 'xxx', 
    ); 
my $url = 'http://publicpics.free.fr/856833_10151249956981150_1285625380_o.jpg'; 
my %elements = ( 
    'type' => 'photo', 
    'source' => $url, 
); 

print Dumper (\%elements); 
print $ua->post('http://api.tumblr.com/v2/blog/xxxx.tumblr.com/post', [%elements])->as_string; 

I использовать этот API Documentation http://www.tumblr.com/docs/en/api/v2#posting

Для нескольких фотографий вы должны пройти в параметрах Массив ... Так что я стараюсь это но не»работа:

use LWP::Authen::OAuth; 
use Data::Dumper; 

my $ua = LWP::Authen::OAuth->new(
      oauth_consumer_key => 'xxx', 
      oauth_consumer_secret => 'xxx', 
      oauth_token => 'xxx', 
      oauth_token_secret => 'xxx', 
    ); 
my @url = ('http://publicpics.free.fr/856833_10151249956981150_1285625380_o.jpg'); 
my %elements = ( 
    'type' => 'photo', 
    'data' => \@url, 
); 

print Dumper (\%elements); 
print $ua->post('http://api.tumblr.com/v2/blog/xxxx.tumblr.com/post', [%elements])->as_string; 

У меня есть это возвращение:

$VAR1 = { 
     'data' => [ 
        'http://publicpics.free.fr/856833_10151249956981150_1285625380_o.jpg' 
       ], 
     'type' => 'photo' 
    }; 
HTTP/1.1 400 Bad Request 
Connection: close 
Date: Sun, 03 Mar 2013 22:01:13 GMT 
Server: Apache 
Vary: Accept-Encoding 
Content-Length: 92 
Content-Type: application/json 
Client-Date: Sun, 03 Mar 2013 22:01:13 GMT 
Client-Peer: 66.6.36.55:80 
Client-Response-Num: 1 
P3P: CP="ALL ADM DEV PSAi COM OUR OTRo STP IND ONL" 
X-Tumblr-Usec: D=112074 

{"meta":{"status":400,"msg":"Bad Request"},"response":{"errors":["Error uploading photo."]}} 
+0

'данные' => \ @url, –

+0

Спасибо, но никаких изменений! – user2129831

ответ

1

данных является для локального файла, использование источника для Интернета, доступные изображения

my %elements = ( 
    'type' => 'photo', 
    'source' => \@url, 
); 

С уважением,

Смежные вопросы