Forum Webscript.Ru

Программирование => Perl => Тема начата: Andre от 11 Ноября 2002, 11:29:35

Название: эмуляция формы (как ?)
Отправлено: Andre от 11 Ноября 2002, 11:29:35
привет

помогите кто знает

как сделать вид, что я обращаюсь к удаленному скрипту из формы, а не спомощю своего скрипта

вот форма, которая лежит у меня на машине и работает






#####################
а вот скрип, который делает вид что он  форма, но его все равно как то определяют

use constant RIPN_WHOIS => \'http://www.ripn.net:80/nic/whois/en/whois.cgi
use constant RIPN_REF => \'http://www.ripn.net/nic/whois/en/\';

my $agent = LWP::UserAgent->new;
my $request = POST ( RIPN_WHOIS,
                    Content => [ Whois => \'test.ru\' ],
                    Referer => RIPN_REF
);

print $resp->content;

заранее спасибо
Название: эмуляция формы (как ?)
Отправлено: mike от 11 Ноября 2002, 11:53:29
Тот пример, что приведен, работать не будет ;)

Вот этот работает:

use constant RIPN_WHOIS => \'http://www.ripn.net:80/nic/whois/en/whois.cgi\';
use constant RIPN_REF => \'http://www.ripn.net/nic/whois/en/\';

require LWP::UserAgent;

my $ua = new LWP::UserAgent;

$response = $ua->post(
RIPN_WHOIS,
Content => [ Whois => \'test.ru\' ],
Referer => RIPN_REF
);

print $response->content;
Название: эмуляция формы (как ?)
Отправлено: Andre от 12 Ноября 2002, 10:41:52
я на самом деле не весь скрипт написал, а только ту часть в которой возможны, как я думаю изменения или дополнения. и оба скрипта работать будут, но вот только если обратиться по тому адресу, что в скрипете указан, то вам дадут только несколько обращения в минуту. а если сделать это из формы, то сколько угодно раз.

другими словами удаленный скрипт все таки понимает, что к нему обращаются скриптом, а не формой.

в этом и есть суть проблемы
Название: эмуляция формы (как ?)
Отправлено: mike от 12 Ноября 2002, 11:42:08
А что говорит, когда не дает обращений?
Название: эмуляция формы (как ?)
Отправлено: Andre от 13 Ноября 2002, 10:22:40
говорит, что лимит обращений исчерпан. попробуйте позже
Название: эмуляция формы (как ?)
Отправлено: mike от 13 Ноября 2002, 11:59:54
Попробуй вызов делать так:

$response = $ua->post(
RIPN_WHOIS,
Content => [
Whois => \'test.ru\',
Host => \'whois.ripe.net\'
],
Referer => RIPN_REF
);
Название: эмуляция формы (как ?)
Отправлено: Andre от 14 Ноября 2002, 10:17:50
попробовал, работает

но проверить не могу. видно удаленный скрипт отключил свою проверку, и теперь можно обращатся к нему сколько угодно раз, любым способом.

попробую потом

спасиба
Название: эмуляция формы (как ?)
Отправлено: Tarasenko от 20 Ноября 2002, 14:29:43
Andre, если я не ошибаюсь, проверка шла по кукям...
Причем, если они отсутствовали - то скрипт говорил "пошел на фиг"
Название: эмуляция формы (как ?)
Отправлено: Mog. от 22 Ноября 2002, 08:18:12
Цитировать
проверка шла по кукям

А когда скрипт прикидывается браузером, он куки может обрабатывать?
Название: эмуляция формы (как ?)
Отправлено: Andre от 22 Ноября 2002, 10:36:04
to Tarasenko
я думаю что проверка была не по кукам, потому что я их отключил и полностью поудалял, перед тем как воспользоваться своей формой(не скриптом). форма работала, а новых куков не появлялось.

to Mog
скрипт может куки обрабатывать