Avatar billede crasher Nybegynder
21. oktober 2001 - 17:37 Der er 4 kommentarer og
2 løsninger

ASP HTTP Check

Hey :)

Jeg står og skal bruge noget ASP der kan checke om en HTTP er gyldig

altså - tag et eksempel som dette:

http://www.eksperten.dk er gyldigt

http://www.dette_domain_er_nok_ikke_gyldigt.dk

så skal jeg bruge noget der kan checke om Request.Form(\"URL\") er gyldig

Måske lidt svært!? Hvis, sætter jeg gerne pointsene op :)
Avatar billede tomsommer Juniormester
21. oktober 2001 - 17:41 #1
Avatar billede prof2 Nybegynder
21. oktober 2001 - 17:49 #2
Nemme points :)
Avatar billede crasher Nybegynder
21. oktober 2001 - 17:50 #3
Nemme og Nemme..? Så lav det med en FormChecker for mig ;)
Avatar billede crasher Nybegynder
21. oktober 2001 - 17:53 #4
Indholdet af linket jeg fik af TomSommer indeholder flg:

<% Option Explicit %>
<html><head>
<title>Link tjekker med ASP HTTP</title>
</head><body>
<%
\' Her erklæres alle variabler
Dim n, objHTTP, strErr, strContent
Dim arrLink(4)

\' Her laves et array
arrLink(0) = \"http://www.jubii.dk\"
arrLink(1) = \"http://www.netdoktor.dk\"

\' Dette link findes IKKE
arrLink(2) = \"http://www.dettelinkfindessikkertikke.dk\"

arrLink(3) = \"http://www.sol.dk\"
arrLink(4) = \"http://www.pulterkammeret.dk\"

\' Her laves en FOR/NEXT løkke gennem vores array
For n = 0 To UBound(arrLink)
    \' Her skabes HTTP objektet
    Set objHTTP = Server.CreateObject(\"AspHTTP.Conn\")
   
    \' Her sættes egenskaber på objektet
    objHTTP.Url = arrLink(n)
    objHTTP.RequestMethod = \"GET\"
    strContent = objHTTP.GetURL

    \' Her tjekkes om der er retuneres nogle fejl
    strErr = objHTTP.Error
   
    If Len(strContent) = 0 OR Len(strErr) > 0 Then
        If Len(strContent) = 0 Then
            Response.Write arrLink(n) & \" - <font color=red>Fejl (ingen content)</font><br>\"
        Else
            Response.Write arrLink(n) & \" - <font color=red>Fejl: \"& strErr &\"</font><br>\"
        End If
    Else
        Response.Write arrLink(n) & \" - <font color=green>OK</font><br>\"
    End If
   
    \' Her frigives objektet fra hukommelsen
    Set objHTTP = Nothing
Next
%>
</body></html>

Nogle der vil lave det om til noget der virker sådan:

En form hvor man kan skrive en URL i, som derefter checker om det er gyldigt

if Request.Form(\"URL\") = \"gyldig\" Then
session(\"URL\") = \"ok\"

eller sådan noget?!
Avatar billede mryom Nybegynder
21. oktober 2001 - 17:56 #5
Her er det, og det virker 100%.
Dette er lidt mere advanceret... Håber det er det du ønsker. ;-)

<%
\' Array med URL\'er, som skal chekkes
arrURLS = \"http://www.si.dk/netsteder\"
arrURLS = arrURLS & \",http://www.danmark.dk\"
arrURLS = arrURLS & \",http://www.useit.com\"
arrURLS = arrURLS & \",http://www.jubii.dk\"
arrURLS = arrURLS & \",http://www.yahoo.dk\"
arrURLS = arrURLS & \",http://www.kvasir.dk\"
arrURLS = Split(arrURLS,\",\")

\' Array med HTTP header koder
arrHTTPcode = Array(\"100\", \"101\", \"200\", \"201\", \"202\", \"203\", \"204\", \"205\", \"206\", \"300\", \"301\", \"302\", \"303\", \"304\", \"305\", \"307\", \"400\", \"401\", \"402\", \"403\", \"404\", \"405\", \"406\", \"407\", \"408\", \"409\", \"410\", \"411\", \"412\", \"413\", \"414\", \"415\", \"416\", \"417\", \"500\", \"501\", \"502\", \"503\", \"504\", \"505\")
\' Array med HTTP header kodernes forklaringer
arrHTTPtext = Array(\"Continue\", \"Switching Protocols\", \"OK\", \"Created\", \"Accepted\", \"Non-Authoritative Information\", \"No Content\", \"Reset Content\", \"Partial Content\", \"Multiple Choices\", \"Moved Permanently\", \"Found\", \"See Other\", \"Not Modified\", \"Use Proxy\", \"Temporary Redirect\", \"Bad Request\", \"Unauthorized\", \"Payment Required\", \"Forbidden\", \"Not Found\", \"Method Not Allowed\", \"Not Acceptable\", \"Proxy Authentication Required\", \"Request Time-out\", \"Conflict\", \"Gone\", \"Length Required\", \"Precondition Failed\", \"Request Entity Too Large\", \"Request-URI Too Large\", \"Unsupported Media Type\", \"Requested range not satisfiable\", \"Expectation Failed\", \"Internal Server Error\", \"Not Implemented\", \"Bad Gateway\", \"Service Unavailable\", \"Gateway Time-out\", \"HTTP Version not supported\")
\' Gennemløb Array med URL\'er
For intURL = 0 to Ubound(arrURLS)
  Set HttpObj = Server.CreateObject(\"AspHTTP.Conn\")
  HTTPObj.Url = arrURLS(intURL)
  HTTPObj.GetURL

  For intCode = 0 to Ubound(arrHTTPcode)
    If Instr(HttpObj.Response,arrHTTPcode(intCode)) Then
      strResponse = arrHTTPtext(intCode)
      Exit For
    End if
  Next
  Response.Write \"<p>\" & arrURLS(intURL) & \" - \" & strResponse & \"</p>\"
  strResponse = \"\"
Next
%>
Avatar billede crasher Nybegynder
21. oktober 2001 - 19:45 #6
Jeg fik et link til det jeg skulle bruge, eller \"funktionen\" i det jeg skulle bruge :)

100 points til TomSommer

300 tilbage fordi jeg ik fik det hele
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester