我正在尝试将图片发布到tinyping.com,但我需要在PERL内部完成此操作而不会出现卷曲。这个命令效果很好。
curl -i --user api:****** --data-binary @myImage.png https://api.tinypng.com/shrink
如何在Perl中使用LWP库表达这一点?我在Perl中非常基础。
到目前为止,我有:
use LWP::UserAgent;
use MIME::Base64;
my $img_target_dir = ...;
my $imgname = ...;
####
#not sure if i need to convert to BASE64
open (IMAGE, "$img_target_dir$imgname") or die "$!";
$raw_string = do{ local $/ = undef; <IMAGE>; };
$encoded = MIME::Base64::encode_base64( $raw_string );
####
my $content = post(
"https://api:***************************\@api.tinypng.com/shrink",
Content_Type => 'image/png',
Content =>[
]
) or die print "failure\n";
答案 0 :(得分:0)
我最终只是蜷缩起来。效果很好。
###### tinyPNG.com ######
my @file = "$img_target_dir$imgname";
print "Sending the PNG for compression at tinyPNG.com\n";
my $curl = `/usr/local/bin/curl -ki --user api:**************** --data-binary @"@file" https://api.tinypng.com/shrink`;
$curl=~ /Location: (.*)/;
my $url = "$1";
print "Image Compressed At: $url</b>\n";
my $curl2 = `/usr/local/bin/curl -k "$url" > "@file"`;
chmod(0775, "@file");
#########################