Re: Re: cgp cgi & sessions

От: Dmitry Akindinov <CGatePro_at_mx_ru>
Дата: Thu 15 Jan 2004 - 18:10:52 MSK


Hello, on 15.01.2004 16:49, (Ares) at CGatePro@mx.ru wrote:

> In original message CGatePro@mx.ru writes:

>> Hello, on 15.01.2004 15:22, (Ares) at CGatePro@mx.ru wrote:
>> 
>>> Hi,
>>> 
>>> Поскажите - можно ли вызвать CGI скрипт внутри сессии?
>>> т.е. не с url вида http://host/cgi-bin/
>> 
>> А зачем? Если нужен Session ID, то его можно либо просто передать в CGI как
>> параметр, либо вытащить из HTTP referer.

>
> referer это хорошо..
>
> была мысль что если можно cgi вызвать внутри
> сессии, то в переменных окружения будет
> что-то типа содержимого %%SESSION%%
>
> что-б не использовать webauth для получения этой информации.
> зачем лишний раз дергать CLI.
Какие проблемы сделать это так:
      <form action=/cgi-bin/envtest.pl method="post">
      <input type=text name=password>
      <input type=hidden name=session value="%%SESSION(ID)%%">
      <input type=submit name="Test CGI" value="Test CGI">
      </form>

А в скрипте:

#!/usr/bin/perl
use strict;

use CGI qw(:standard);

print header; # Print "Context-type: text/html" print start_html("Environment variables Test");

my $req = new CGI;
my $WhoIsConnected = $req->remote_host();
my $session = $req->param('session');

print "remote host=",$WhoIsConnected,"<br>\n";
print "Session ID=",$session,"<br>\n";
print "Environment variables:<br>\n";

foreach (keys %ENV) {
  print "<p>",$_,"=",$ENV{$_},"</p><br>\n"; }

print end_html();

Проверено, работает.

-- 
Best regards,
Dmitry Akindinov -- Stalker Labs
Получено Thu Jan 15 15:10:55 2004

Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:12:54 MSK