Active Server Pages i Windows 2000

Det nye styresystem byder på spændende nyheder for ASP-udviklere.

Styresystemet Windows 2000 Server leveres med en ny version af web-serveren Internet Information Server (IIS), 5.0. I forhold til version 4.0, der følger med Windows NT Server, er der sket adskillige forbedringer, ikke mindst indenfor ASP (Active Server Pages), en teknologi, som gør det muligt at udføre scripts på serveren.


En af de vigtigste forbedringer ligger uden tvivl i hastigheden - Microsoft hævder selv, at eksisterende ASP-applikationer kører 50-100 pct. hurtigere under Windows 2000 end under Windows NT 4.0. Denne artikel kigger på et lille udvalg af de nye muligheder, som findes i ASP under IIS 5.0.


Server.Transfer


Det er ofte nødvendigt at sende brugeren videre til en anden ASP-side. Hidtil har den eneste mulighed været metoden Response.Redirect, som sender en besked til browseren om, at denne skal kalde en bestemt URL. Problemet med Response.Redirect er bl.a., at der spildes tid med at kalde klienten, der igen skal kontakte serveren. Det ville være nemmere, hvis hele opgaven kunne klares på serveren.


Det er nu muligt med metoden Server.Transfer. Når denne metode kaldes, overføres kontrollen over output-kanalen til den nye ASP-side, der også har adgang til alle variabler i Request-samlingen. I modsætning til Response.Redirect kan Server.Transfer dog ikke kalde et dokument på en anden maskine.


Nedenfor ses et eksempel på, hvor metoden kan bruges:


side1.asp


< %

Response.Write("Denne sætning er skrevet på side 1")

Session("enVar") = "Denne variabel er sat på side 1"

Server.Transfer("side2.asp")

% >


side2.asp


< %

Response.Write(Session("enVar") & ", men skrevet på side 2")

% >


Resultatet af et kald til side1.asp er:


Denne sætning er skrevet på side 1

Denne variabel er sat på side 1, men skrevet på side 2.


Server.Execute


IIS 5.0 indeholder en anden ny metode, Server.Execute, der ligesom Server.Transfer kan bruges til at hente programkode fra en anden side, uden at sende besked til klienten om at gå til en ny URL. Server.Execute er en form for include, der henter en ASP-fil og behandler indholdet, som var det del af det aktuelle dokument. I modsætning til Server.Transfer skifter applikationen ikke til en ny side; når behandlingen af indholdet i dokumentet er afsluttet, skifter kontrollen til den gamle side.


Metoden er en nem genvej til modulære applikationer, hvor man kan undgå at gentage den samme ASP-kode på hver side, og den kan udnyttes til at lave betingede includes, hvor indhold kun importeres, hvis en bestemt forudsætning er opfyldt.


Nedenfor ses eksemplet fra før, denne gang med Server.Execute. Som det kan ses, kan vi inkludere programlogik efter kaldet til Server.Execute, fordi kontrollen over applikationen bliver på den aktuelle side.


side1.asp


< %

Response.Write("Denne sætning er skrevet på side 1")

Session("enVar") = "Denne variabel er sat på side 1"

Server.Execute("side2.asp")

Response.Write("Denne sætning er igen skrevet på side 1")

% >


side2.asp


< %

Response.Write(Session("enVar") & ", men skrevet på side 2")

% >


Bedre Browser Capabilites


ASP indeholder en komponent kaldet Browser Capabilities, der fortæller, hvilke egenskaber klientens browser understøtter. Komponenten bruger en statisk tekstfil, som programmøren selv kan opdatere med nye informationer. Denne model har en række svagheder, ikke mindst at komponenten kun returnerer informationer om default-indstillinger; de fleste browsere giver imidlertid brugeren muligheden for at ændre konfigurationen.


I IIS 5.0 kan Browser Capabilities læse en cookie, som sendes fra klienten, og bruge den til at finde frem de til nøjagtige egenskaber, som er aktiveret i browseren. En sådan cookie kan f.eks. sendes med et simpelt script på klient-siden. Applikationen kan så tilpasses klientens egenskaber.


HTML-filer gemt som .ASP


Som udvikler kan man ofte være fristet til at gemme alle sine applikationsfiler med endelsen .asp, selvom nogle filer slet ikke indeholder programkode og derfor i realiteten kunne gemmes med endelsen .htm. Problemet har hidtil været, at serveren spilder tid med at lede efter programkode i filen, hvis endelsen er .asp, mens htm-filer straks sendes ubehandlet til klienten. Det tager derfor længere tid at hente filer med .asp end med .htm, og serveren spilder ressourcer på at søge efter programkode som ikke findes.


I IIS 5.0 bliver ASP-filer uden scripts behandlet næsten lige så hurtigt som htm-filer. Hastigheden er stadig ikke helt den samme - og kan aldrig blive det, for serveren skal først indlæse filen for at undersøge, om den indeholder scripts som skal udføres - men hastighedsforskellen er blevet mindre. Det kan nu anbefales at gemme filer med asp-endelsen, selvom de ikke indeholder kode, hvis man regner med at tilføje scripts på et senere tidspunkt.


Flere informationer


Denne artikel har kun præsenteret en meget lille del af mulighederne i ASP under IIS 5.0. Uddybende informationer findes i den elektroniske hjælpedokumentation, der følger med Windows 2000 Server, og på nedenstående Internet-adresser:


msdn.microsoft.com /library/psdk/iisref/iiwachng.htm


msdn.microsoft.com /library/psdk/iisref/iiwanew.htm


msdn.microsoft.com /workshop/server/asp/server02282000.asp




    Brancheguiden
    Brancheguide logo
    Opdateres dagligt:
    Den største og
    mest komplette
    oversigt
    over danske
    it-virksomheder
    Hvad kan de? Hvor store er de? Hvor bor de?
    EG Danmark A/S
    Udvikling, salg, implementering og support af software og it-løsninger til ERP, CRM, BA, BI, e-handel og portaler. Infrastrukturløsninger og hardware. Fokus på brancheløsninger.

    Nøgletal og mere info om virksomheden
    Skal din virksomhed med i Guiden? Klik her

    Kommende events
    Bliv klar til AI Act: Det vil påvirke både din udvikling, drift og organisation

    Fordelene ved at anvende kunstig intelligens bliver stadig mere udtalte, og både som virksomhed og myndighed er det i stigende grad uholdbart ikke at udforske mulighederne. Men der er også risici forbundet på den nye teknologi, og på dette formiddagsseminar ser vi på, hvordan verdens første regulatoriske kompleks – EUs kommende AI Act – adresserer behovet for en etisk, ansvarlig og kontrolleret anvendelse af AI.

    20. august 2024 | Læs mere


    Det Digitale Produktpas

    Kom med og hør om, hvordan du kommer i gang med at sikre din virksomhed er klar til Det Digitale Produktpas. Vi sætter fokus på, hvordan du bliver klædt på til at få styr og struktur på dine data, samt hvilke krav du skal sætte til dine leverandører og andre i din værdikæde, for at sikre den nødvendige information er tilgængelig.

    21. august 2024 | Læs mere


    Cyber Security Summit 2024

    På Cyber Security Summit får du indsigt i det aktuelle trusselslandskab, overblikket over de nyeste værktøjer og trends indenfor sikkerhedsløsninger, indsigt i de relevante rammeværktøjer og krav samt de bedste løsninger og værktøjer til at sikre effektiv drift og høj compliance.

    27. august 2024 | Læs mere