Apache :: ASP :: PERLSCRIPT [ apache + asp + perl = apache::asp ]

| INTRO
| INSTALL
| CONFIG
| SYNTAX
| EVENTS
| OBJECTS
| SSI
| CGI
- | PERLSCRIPT
| COOKIES
| FAQ
| TUNING
| CREDITS
| SUPPORT
| SITES USING
| TODO
| CHANGES
| EXAMPLES
| PERLSCRIPT
Much work has been done to bring compatibility with ASP applications written in PerlScript under IIS. Most of that work revolved around bringing a Win32::OLE Collection interface to many of the objects in Apache::ASP, which are natively written as perl hashes.
The following objects in Apache::ASP respond as Collections:
            $Application
    	$Session
    	$Request->FileUpload *
    	$Request->FileUpload('upload_file') *
    	$Request->Form
    	$Request->QueryString
    	$Request->Cookies
    	$Response->Cookies
    	$Response->Cookies('some_cookie')

      * FileUpload API Extensions
And as such may be used with the following syntax, as compared with the Apache::ASP native calls. Please note the native Apache::ASP interface is compatible with the deprecated PerlScript interface.
     C = PerlScript Compatibility	N = Native Apache::ASP

     ## Collection->Contents($name)
     [C] $Application->Contents('XYZ')
     [N] $Application->{XYZ}

     ## Collection->SetProperty($property, $name, $value)
     [C] $Application->Contents->SetProperty('Item', 'XYZ', "Fred");
     [N] $Application->{XYZ} = "Fred"

     ## Collection->GetProperty($property, $name)
     [C] $Application->Contents->GetProperty('Item', 'XYZ')
     [N] $Application->{XYZ}

     ## Collection->Item($name)
     [C] print $Request->QueryString->Item('message'), "<br>\n\n";
     [N] print $Request->{QueryString}{'message'}, "<br>\n\n";

     ## Working with Cookies
     [C] $Response->SetProperty('Cookies', 'Testing', 'Extra');
     [C] $Response->SetProperty('Cookies', 'Testing', {'Path' => '/'});
     [C] print $Request->Cookies(Testing) . "<br>\n";
     [N] $Response->{Cookies}{Testing} = {Value => Extra, Path => '/'};
     [N] print $Request->{Cookies}{Testing} . "<br>\n";
Several incompatibilities exist between PerlScript and Apache::ASP:
     > Collection->{Count} property has not been implemented.
     > VBScript dates may not be used for Expires property of cookies.
     > Win32::OLE::in may not be used.  Use keys() to iterate over.
     > The ->{Item} property does not work, use the ->Item() method.
Copyright © 1998-2000, Joshua Chamas, Chamas Enterprises Inc.