Avatar billede steen Nybegynder
03. april 2003 - 11:33 Der er 15 kommentarer og
1 løsning

Hente XML fil med ASP til extension

Jeg har et script, der henter et xml-dokument på en anden server.

Cirka på denne måde her:
Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
Set objXMLDOM = Server.CreateObject("Microsoft.XMLDOM")
objXMLDOM.async = false
Call objXMLHTTP.Open("GET", "http://domaene.dk/fil.xml", False)
objXMLHTTP.Send

Set objXMLDOM = objXMLHTTP.ResponseXML

Det går også fint nok, men hvis jeg ændrer filen til at være en asp-fil f.eks. http://domaene.dk/fil.asp så går det galt...

Bemærk: indholdet i begge filer er ens!
Avatar billede cesil Nybegynder
03. april 2003 - 12:24 #1
Du kan vel ikke læse en asp fil med et object der læser xml-filer.
Avatar billede steen Nybegynder
03. april 2003 - 12:26 #2
Jamen den returnere jo et xml output til skærmen.... er det ikke nok?, Hvis ikke, hvad skal jeg så gøre??
Avatar billede cesil Nybegynder
03. april 2003 - 12:32 #3
Den returnerer vel ikke noget når du forsøger at læse en asp fil?
Hvad er det du vil opnå?
Måske du kan include din asp side istedet
Avatar billede steen Nybegynder
03. april 2003 - 12:38 #4
Her er koden:

<%
Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
Set objXMLDOM = Server.CreateObject("Microsoft.XMLDOM")
objXMLDOM.async = false
Call objXMLHTTP.Open("GET", "http://domaene.dk/filnavn.asp", False)
objXMLHTTP.Send

Set objXMLDOM = objXMLHTTP.ResponseXML

Set root = objXMLDOM.documentElement

    For i = 0 To (root.childNodes.length - 1)
   
          For e = 0 to (root.childNodes(i).childNodes.length - 1)
                Response.Write root.childNodes.Item(i).childNodes.Item(e).tagName & ": " & root.childNodes.Item(i).childNodes.Item(e).text
          Next
    Next

Set objXMLHTTP = Nothing
Set objXMLDOM = Nothing
%>
Avatar billede nozio Nybegynder
03. april 2003 - 13:45 #5
Der skal være:

<% Response.ContentType = "text/xml" %>

i asp-filen for at den kan parses/valideres som XML
Avatar billede steen Nybegynder
03. april 2003 - 14:04 #6
Det gav ingen forskel :(
Avatar billede nozio Nybegynder
03. april 2003 - 14:09 #7
Det skal være:

"http://domaene.dk/filnavn.asp"

- der skal have sat <% Response.ContentType = "text/xml" %> ind .....
Avatar billede steen Nybegynder
03. april 2003 - 14:10 #8
Ja... den der indeholder xml data... men det gav ingen forskel
Avatar billede nozio Nybegynder
03. april 2003 - 14:13 #9
har du en test ? (url)
Avatar billede steen Nybegynder
03. april 2003 - 14:15 #10
Jeg kan desværre ikke give adgang... men koden er præcis som ovenover... og hvis jeg omdøber "http://domaene.dk/filnavn.asp" til "http://domaene.dk/filnavn.XML" så virker det???

Nogen ideer!
Avatar billede nozio Nybegynder
03. april 2003 - 14:20 #11
Hmmm - har lige selv prøvet og hvis jeg ikke sætter <% Response.ContentType = "text/xml" %> ind - så giver den mig denne fejl:

Der opstod en Microsoft VBScript-kørselsfejl fejl '800a01a8'
Et objekt er obligatorisk

- men efter jeg sætter det ind så virker det 100% ???


Sætter du <% Response.ContentType = "text/xml" %> ind helt oppe i toppen ?
Avatar billede steen Nybegynder
03. april 2003 - 14:24 #12
Yep...

<% Response.ContentType = "text/xml" %>
<?xml version="1.0" encoding="utf-8"?>
<NewDataS....
Avatar billede steen Nybegynder
03. april 2003 - 14:26 #13
Stop
Avatar billede nozio Nybegynder
03. april 2003 - 14:27 #14
Prøv lige med:

<?xml version="1.0" encoding="ISO-8859-1"?>

istedet for:

<?xml version="1.0" encoding="utf-8"?>

- for den giver også mig en fejl ....
Avatar billede steen Nybegynder
03. april 2003 - 14:29 #15
Jeg omdøbte filen (xml'en) og prøvede igen, og nu virker det med din <% Response.ContentType = "text/xml" %> i toppen.... den har åbentbart været cachet!

Men er det helt normal, at man skal sætte denne content-type for at det virker? og er det den RIGTIGE måde at gøre det på
Avatar billede nozio Nybegynder
03. april 2003 - 14:30 #16
Hvis du ikke giver den extension .xml - så skal du have Response.ContentType = "text/xml" med ellers er det ikke korrekt xml :)
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