af Jonas Astrup, HTML.dk
Sidst opdateret d. 1. juni 2001

Dette eksempel viser, hvordan du med komponenten AspHTTP kan hente dokumenter fra andre websteder ind på dit eget websted, og præsentere dem under dit domæne.
Princippet svarer nogenlunde til at Server Side Include (SSI) et dokument fra et andet domæne, hvilket jo som bekendt netop ikke kan lade sig gøre - så her er en alternativ løsning.
For at kunne benytte disse scripts må komponenten AspHTTP fra ServerObjects.com være tilgængeligt på dit webhotel/server. Nogle udbydere giver adgang til denne komponent - ellers kan man købe/downloade komponenten fra ServerObjects.com.
Som det første eksempel vil vi hente forsiden fra jubii.dk og vise under domænet HTML.dk - så husk at kigge på adresselinien i din browser når du får vist nedenstående eksempel:
<% Set HttpObj = Server.CreateObject("AspHTTP.Conn") HTTPObj.Url = "http://www.jubii.dk" Response.Write HTTPObj.GetURL %>
Som du nok har opdaget, kan denne metode virke lidt stødende i forhold til begreber som ophavsret og god skik. Men komponenten har mange andre anvendelsesmuligheder end blot at stjæle andres dokumenter.
Med AspHTTP kan man også få fat på den såkaldte "HTTP response" - det vil sige det svar, som en webserver returnerer når man spørger den om lov til at se et dokument. F.eks. returnerer en webserver "404 Object Not Found" når et dokument ikke findes på serveren (Se alle HTTP Header koder). Det kan vi udnytte til et eksempel hvor vi tjekker om et link er gyldigt.
Til eksemplet har vi brug for noget, som vi med 100% sikkerhed ved ikke findes - f.eks. intelligens hos Dansk folkeparti. Hvis vi leder efter det, er vi helt sikre på at få beskeden: "404 Object Not Found" - lad os prøve:
<% Set HttpObj = Server.CreateObject("AspHTTP.Conn") HTTPObj.Url = "http://www.danskfolkeparti.dk/intelligens" HTTPObj.GetURL Response.Write "<p>Du spurgte efter mappen <em>intelligens</em> hos www.danskfolkeparti.dk</p>" Response.Write "<p>Og serveren svarede straks: <strong>" & HttpObj.Response & "</strong></p>" %>
Ganske som du havde forestillet dig, ikke?
Du kan faktisk også bruge denne funktion til noget fornuftigt. Forestil dig at du har flere hundrede links, som du ikke er helt sikre på om er iorden. Normalt ville du måske sidde og tjekke dem manuelt, men med denne funktion kan du gøre det hurtigt og automatisk. Du finder et færdigt script til sådan en linkchekker her.
Du kan også bruge AspHTTP til at hente binære data fra en anden server - f.eks. et billede, i dette tilfælde af Webguruen Jakob Nielsen fra useit.com:
<% Response.ContentType = "image/jpeg" Set HTTPObj = Server.CreateObject("AspHTTP.Conn") HTTPObj.Url = "http://www.useit.com/jakob/photos/jakob_likes_it.jpg" HTTPObj.GetURL Response.BinaryWrite HTTPObj.BinaryData %>
AspHTTP har mange flere funktioner, dem kan du læse mere om i manualen for AspHTTP hos ServerObjects.com.