Avatar billede lumbye Nybegynder
15. februar 2001 - 15:31 Der er 11 kommentarer og
1 løsning

Gemme ekstern HTML-fil lokalt på egen server

Jeg skal have en rå html-fil fra ekstern server \"konverteret\" til et format, således at denne kan indgå i en server side include på egen server.

Jeg synes engang at have stødt ind i en beskrivelse, hvor det blev nævnt, at man kunne gemme eksterne filer lokalt på egen server (i rå tekstformat) og derefter hente dem ind i et hvilket som helst dokument på egen server via \"include file\" eller \"include virtual\".

Det bør måske bemærkes, at konverteringen skal foregå løbende, da den eksterne kildefil er et nyheds-feed, hvor tidspunkterne for opdateringer er ukendte. Måske den interne tekstfil skal opdateres hver eneste gang den side, hvorpå den \"includes\" loades.
Avatar billede disky Nybegynder
15. februar 2001 - 15:32 #1
Lav noget server side scripting f.eks. i JSP som gør det for dig.
Avatar billede lumbye Nybegynder
15. februar 2001 - 15:43 #2
Nu er JSP ikke den stærke side - eksempel på source eller script vil være guld!
Avatar billede disky Nybegynder
15. februar 2001 - 15:46 #3
til lige dit brug, kan jeg ikke hjælpe med et, desværre
Avatar billede netsrac Praktikant
15. februar 2001 - 15:46 #4
Adgang til ASP ?

Så kan du gøre det med et komponent kaldet asphttp
Avatar billede lumbye Nybegynder
15. februar 2001 - 15:52 #5
asphttp ligger er ikke tilgængelig på udbyderens server :-(
Avatar billede lumbye Nybegynder
15. februar 2001 - 15:56 #6
Når nu asphttp ikke er tilgængelig som komponent, kan jeg så selv installere den i eget directory og køre det derfra?
Avatar billede netsrac Praktikant
15. februar 2001 - 16:01 #7
Nej det kan du ikke...hvilken udbyder har du, det kan være de har et andet komponent der kan bruges?
Avatar billede lumbye Nybegynder
15. februar 2001 - 19:56 #8
Udbyderen er Abusiness - det tætteste vi kommer på noget der kan arbejde med eksterne kilder er nok W3 Sockets. Derudover har de bl.a. ASPPing, GUIDMaker o.l. men det kommer vi jo ikke langt af...
Avatar billede netsrac Praktikant
15. februar 2001 - 20:04 #9
W3 Sockets kan godt bruges, jeg finder et eksempel..
Avatar billede netsrac Praktikant
15. februar 2001 - 20:07 #10
Eksempel fra azero.dk
<%

\' *** Get a file through HTTP ( GetHttp(\"www.azero.dk/forside.asp\") )
Function GetHttp(strUrl)

  \' Reserve variables
  Dim strHost
 
  \' Start error handling
  On Error Resume Next

  \' Strip off http://
  If LCase(Left(strUrl, 7)) = \"http://\" Then
    strUrl = Right(strUrl, Len(strUrl) - 7)
  End If
 
  \' Split server address and filename
  If InStr(strUrl, \"/\") > 0 Then
    strHost = Left(strUrl, InStr(strUrl, \"/\") - 1 )
    strUrl = Right(strUrl, (Len(strUrl) - InStr(strUrl, \"/\")) + 1 )
  End If
 
  \' Add port if not included
  If InStr(strHost, \":\") = 0 Then
    strHost = strHost & \":80\"
  End If
 
  \' Create object
  set Socket = server.CreateObject(\"Socket.TCP\")

  \' Set hostadress
  socket.Host = strHost

  \' Set timeout to 5 seconds
  Socket.TimeOut = 5000

  \' Open connection to host
  Socket.Open

  \' Send getline for content
  Socket.SendLine(\"GET /\" & strUrl & \" HTTP/1.0\" & Chr(13) & Chr(10) & \"Host: \" & strHost & Chr(13) & Chr(10))

  \' Wait until content is recieved
  Socket.WaitForDisconnect()

  \' Insert data into function
  GetHttp = Socket.Buffer

  \' Close object
  Socket.Close()

  \' Error
  If Err.Number <> 0 Then
      Response.Write Err& \": \" & Err.Description
      Response.Write \"<br>Host:[\" & strHost & \"]<br>Url:[\" & strUrl & \"]\"
      Exit function
  End If
  On Error Goto 0

End Function

\' *** Get content within a tag (strS) ( GetHttpData(\"www.azero.dk/forside.asp\", \"body\") )
Function GetHttpData(strUrl,strS)
  Dim strT
  strT = GetHttp(strUrl)
  strT = Mid(strT, InStr(LCase(strT), \"<\" & LCase(strS)))
  strT = Mid(strT, InStr(LCase(strT), \">\") + 1)
  strT = Left(strT, InStrRev(LCase(strT), \"</\" & LCase(strS)) - 1)
  GetHttpData = strT
End Function

\' *** Get the header from a file through HTTP ( GetHttpHeader(\"www.azero.dk/forside.asp\") )
Function GetHttpHeader(strUrl)
  Dim strT
  strT = GetHttp(strUrl)
  strT = Mid(strT, 1, InStr(strT, Chr(13) & Chr(10) & Chr(13) & Chr(10)))
  GetHttpHeader = strT
End Function

\' *** Get the body from a file through HTTP ( GetHttpBody(\"www.azero.dk/forside.asp\") )
Function GetHttpBody(strUrl)
  Dim strT
  strT = GetHttp(strUrl)
  strT = Mid(strT, InStr(strT, Chr(13) & Chr(10) & Chr(13) & Chr(10)) + 4)
  GetHttpBody = strT
End Function


\' Hent alt mellem <body> og </body> fra vores bestillingsside og udskriv det
Response.Write GetHttpData(\"azero.dk/bestil/default.asp\", \"body\")

%>
Avatar billede lumbye Nybegynder
19. februar 2001 - 08:47 #11
Så virker den!!! Mange tak for det. Dine points er fuldt fortjent, netsrac.
Avatar billede netsrac Praktikant
19. februar 2001 - 11:50 #12
Det var så lidt :-)
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