forTeesSake Geschrieben 16. September 2003 Geschrieben 16. September 2003 hi, habe eine asp anwendung geschrieben und möchte aus den fertigen seiten nur den plainen htmlcode speichern um daraus eine "html-anwendung" machen zu können. ich dachte mir das so: über ein skript jede asp-seite aufrufen und den quellcode als txt oder html-datei speichern. geht das irgendwie?? Zitieren
beetFreeQ Geschrieben 17. September 2003 Geschrieben 17. September 2003 Man kann ja auf jeden Fall im Internet-Explorer oder so ziemlich jedem anderen Browser den Quelltext der grad angezeigten Seite ausgeben lassen oder halt die HTML-Datei direkt speichern. So könntest du zumindest jede Seite als HTML bekommen. Wie sich das aber Automatisieren lässt, weiß ich nicht... - dürfte ein ziemlicher Programmieraufwand werden... Du solltest allerdings auch vorher überlegen, ob das ASP-Projekt so überhaupt ohne den ASP-Code funzen könnte! Dein größtes Problem wird da erstmal folgendes: Die Links auf den einzelnen Seiten werden so natürlich großteils nicht mehr funktionieren. Zum einen, weil die Dateiendung vorher ja meist nicht HTML war - und zum anderen, weil an die URL angehängte Variablen bzw. anderweitig übergebene Variablen ja keinen HTML-Dateien übergeben werden können - zumindest wird das nicht mehr funzen. Nehmen wir z.B. eine Linkliste, die immer auf die selbe ASP-Seite mit einer ID als Anhängsel verlinkt, um dort anhand der ID Daten aus einer Tabelle zu holen. Du kannst nun jede Seite als HTML mit jeweils eigenem Namen speichern und dann die entsprechenden Links in der Liste entsprechend anpassen. Könnte zu einem extremen Aufwand ausarten - je nach Größe des Projekts... Naja, und Formulare etc sind dann ja auch nicht mehr wirklich lauffähig... Zitieren
forTeesSake Geschrieben 17. September 2003 Autor Geschrieben 17. September 2003 ja, ich weiss. forms habe ich nicht. alle links werden im html-quellcode ersetzt etc... man muss doch irgendwie an den html code kommen der rausgeschickt wird. da isser ja... Zitieren
forTeesSake Geschrieben 22. September 2003 Autor Geschrieben 22. September 2003 so, jetzt hab ich mal das msxml object verwendet um mir den quellcode meiner datei zu holen. ausgeben funtioniert super, aber wenn ich den quelltext als textdatei sichern will geht das nicht. kommt ein fehler. wenn ich den quelltext mal versuche über javascript auszugeben geht das auch nicht. ich kann aber an den quelltext irgendeinen string dranhängen und das ganz im browser ausgeben, das geht. kann das sein dass der quelltext irgendie gesperrt ist, doch kein "echter" string ist oder sonstiges?? hier mal mein asp code: <% Set objXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP") objXmlHttp.open "GET", "http://MEINESEITE", False objXmlHttp.send strHTML = objXmlHttp.responseText Set objXmlHttp = Nothing Set fso = Server.CreateObject("Scripting.FileSystemObject") set fname=fso.CreateTextFile("c:\MEINESEITE.txt",true) 'HIER KOMMT DER FEHLER fname.Write(strHTML) 'HIER KOMMT DER FEHLER ENDE fname.Close set fname = nothing set fso = nothing 'DAS HIER GEHT ABER UND IM BROWSER SEHE ICH DIE KOMPLETTE SEITE Response.Write strHTML %> hilfe!? Zitieren
forTeesSake Geschrieben 22. September 2003 Autor Geschrieben 22. September 2003 wen es interessiert... Const adTypeText = 2 Const adReadAll = -1 Dim objXmlHttp, objStream, fso, fname Set objXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0") objXmlHttp.open "GET", "MEINESEITE", False objXmlHttp.send Set objStream = Server.CreateObject("ADODB.Stream") objStream.Open objStream.Type = adTypeText objStream.WriteText (objXmlHttp.responseBody) objStream.Position = 0 objStream.Charset = "latin1" Set fso = Server.CreateObject("Scripting.FileSystemObject") set fname=fso.CreateTextFile("MEINEDATEI",true) fname.Write(objStream.ReadText(adReadAll)) 'Response.Write objStream.ReadText(adReadAll) fname.Close set fname = nothing set fso = nothing objStream.close Set objStream = Nothing Set objXmlHttp = Nothing Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.