Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Perl (http://www.flasher.ru/forum/forumdisplay.php?f=21)
-   -   картинка не получается,,, получаются крокозяблики (http://www.flasher.ru/forum/showthread.php?t=57584)

BAKyyM_666 28.04.2004 06:50

картинка не получается,,, получаются крокозяблики
 
Ситуация такая:

perl скрипт:

#!/usr/bin/perl
print "Content-type: text/html\n\n";

print <<HTML;
какой-то текст.....
HTML

### тут хочу получить картинку от другого скрипта
use LWP::UserAgent;
$ua = LWP::UserAgent->new;

$url="http://куда-то.ру/cgi-bin/скрипт.cgi";

my $req = HTTP::Request->new(POST=>$url);
#указываем тип контекста
$req->content_type('application/x-www-form-urlencoded');
#вводим сам контекст для передачи
$req->content("login=$login&sesid=$sesid");
my $res = $ua->request($req);

binmode(STDOUT);
print $res->content;

### картинка не получается,,, получаются крокозяблики

как получить картинку из другог скрипта, но перед этим указывая в исходном скрипте Content-type: text/html\n\n???
можно ли вообще так?

loskut 28.04.2004 07:06

наверное нужно высосаный картиночный файл записать в file.gif (в бинарном разумеется режиме), а в скрипте поставить

print "Location: file.gif";

или print "Location: file.HTML";
там где прописан урл к file.gif

BAKyyM_666 29.04.2004 03:39

я так сперва и сделал
 
Ага, Лоскут, я так по началу и сделал, но это как то не по спотртивному получается. Картинка кешируется - не обновляется, а нужно чтоб каждый раз обновлялась.

Я на утро проснулся и дошло: :D

print "<img src=\"скрипт.cgi?login=$login&sesid=$sesid\">";

--простенько и со вкусом.
Конечно хорошо что скрипт принимает параметры методом get, а тоб не сработало.

loskut 29.04.2004 06:08

ну ты ж сказал, что Content-type: text/html\n\n не менять, а при твоём решении нужно указать не html a gif

BAKyyM_666 29.04.2004 22:34

Я сказал, что в исходном скрипте Content-type: text/html\n\n не менять.
то есть так:

Content-type: text/html\n\n
print <<HTML;
html теги.......
HTML;
print "<img src=\"скрипт.cgi?login=$login&sesid=$sesid\">";


а в скрипте, который дает картинку, да, там нужно Content-type: image/gif\n\n
Шо правда я снова на утро проснулся а она, картинка, все равно кешируется, но это похоже другими методами устранить можно.


Часовой пояс GMT +4, время: 00:05.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.