webForumDet fria alternativet

En liten PING utmaning

ASP

11 svar · 292 visningar · startad av ElMaco

Medlem sedan juni 2000161 inlägg
Frågan#1

Kan man, utan tredjepartskomponenter, avgöra om en sida finns tillgänglig? Simpelt uttryckt söker jag en FileExists med URL ;)

Någon vänlig själ som kan ge några pointers?

Medlem sedan apr. 20007 588 inlägg
#2

Nu antar jag att du använder dig av ASP och då är det lite knepigt med vanlig socket-kommunikation utan serverkomponenter, men så här går du tillväga rent allmänt:

  1. Dela upp URLen i värddatornamn och sökväg
    > www.hejsan.com/hoppsan/hej.html
    blir
    > värddatornamn = www.hejsan.com
    > sökväg = /hoppsan/hej.html

  2. Skapa en socket-anslutning mot webbservern på port 80 om inget annat angetts i URLen.

  3. Skicka kommandot

GET <sökväg> HTTP/1.0\n\n

Där <sökväg> i detta exempel är /hoppsan/hej.html. (\n står för radbrytning)

  1. Läs in den data som webbservern, den första raden kommer t.ex att se ut så här:

HTTP/1.1 404 Not Found

om filen inte finns på webbservern.

  1. Filtrera ut statuskoden (t.ex 404 som i exemplet ovan) och voila, du kan nu se om filen existerar, har flyttats etc. Utförlig beskrivning av koderna hittar du här.

------------------
Murphy's Law of Thermodynamics:
Things get worse under pressure.

Medlem sedan juni 2000161 inlägg
#3

"2) Skapa en socket-anslutning mot webbservern på port 80 om inget annat angetts i URLen."

Har du ett snabbt exempel på vilka objekt man lämpligen använder?

Medlem sedan juni 2000161 inlägg
#4

Det är jag som är lat... Jag har det i en bok här. Tackar.

------------------
##############################################

        Teamwork is a good thing.
   It enables us to blame oneanother.

##############################################

Medlem sedan maj 2000269 inlägg
#5

nån som kan skriva lite kod?.

Medlem sedan juni 2000161 inlägg
#6

Har har du ett exempel för tredjepartskomponent...
<%
'Detta exemplet funkar bara för WinSock komponenter från t.ex. Dimac

Dim Sock, theRequest
Set Sock = Server.CreateObject("Socket.TCP")
Sock.Host = "b121.hn.student.liu.se:80"

theRequest = "GET / HTTP/1.1" & vbCrLf

Sock.Open()
Sock.SendLine theRequest
Sock.waitForDisconnect()
Response.Write "\<pre\>" & Server.HTMLEncode(Sock.Buffer) & "\</pre\>"

Sock.Close()

%\>
Medlem sedan maj 2000269 inlägg
#7

det går nog inte att göra utan komponent?... hmmm nån som har ASP3.0 och kan testa ServerExecute, och objectet Record. det är väl dessa som kanske är kandidater utan komponent.

Medlem sedan juni 2000161 inlägg
#8

Nä, jag tror mig konstatera det också... ...att det inte är genomförbart utan tredjepartskomponent. Min ISP kör IIS 4 vilket utesluter ASP 3.0. Men jag har inte kollat alla möjligheter ännu. Så, frågan kvarstår alltså - how to?

Läser o testar just nu: http://msdn.microsoft.com/library/devprods/vs6/vbasic/vbcon98/vbconusinginternettransfercontrol.htm

[Redigerat av ElMaco den 30 sep 2000]

Medlem sedan apr. 20007 588 inlägg
#9

Det behöver ju inte vara tredjepartskomponenter. Man kan självklart skriva egna serverkomponenter. Det var för övrigt grundidén med ASP, att den mesta logiken skulle placeras i kompilerade serverkomponenter och att ASP-sidan endast skall fungera som ett presentationsskikt, tyvärr är det många sajter som inte följer det mönstret

------------------
Murphy's Law of Thermodynamics:
Things get worse under pressure.

Medlem sedan maj 2000269 inlägg
#10

Third party components är serverkomponent, alltså det är samma sak. Ok vänner, håll utkik för mitt nästa ASP plus tips, kommer ikväll. Detta språk är så braa!.

Medlem sedan apr. 20007 588 inlägg
#11

"Third party component" är inte synonymt med serverkomponent.

En "Third party component" är en komponent som en utomstående part har tillverkat, alltså precis vad namnet betyder.

Eftersom många ASP-knackare idag inte har ens grundläggande programmeringskunskaper så kan dom följaktligen inte skriva serverkomponenter (COM-objekt eller vad M$ kallar dom för idag) och därför har begreppet blivit synonymt med alla komponenter eftersom folk inte kan knacka ihop sina egna.

------------------
Murphy's Law of Thermodynamics:
Things get worse under pressure.

Medlem sedan juni 2000161 inlägg
#12

Vi använder oss av en miljö där SysAdmin är väldigt sträng vad gällande egna DLL-filer. Bäst hade varit att smälla in allt i ett eget *.asp-dokument. Så alla 3rd-party components är lite tveksamma, och egna grejjer nästan uteslutna. Budgeten för detta projekt håller inte för en dedikerad server... *ler*

Appropå 3rd party... Mot efterfesten! ;-)

------------------
##############################################

        Teamwork is a good thing.
   It enables us to blame oneanother.

##############################################

404 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
136 ms — hämta statistik (db)
132 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)