Avatar billede kriax Nybegynder
16. december 2009 - 21:11 Der er 7 kommentarer og
1 løsning

Hjælp til SOAP request.

Hejsa

Jeg er kommet lidt i problemer ifbm. at jeg skal læse og vise oplysninger fra en XML fil.

Jeg har via googling og via trial & error fundet frem til hvordan jeg læser en XML fil jeg har liggende på min FTP server, men egentlig skal jeg aflæse en XML fil fra en ekstern side der genererer en XML fil udfra nogle oplysninger jeg giver serveren.

Kan se at jeg muligvis skal bruge SOAP for at kunne få det til at virke, men efter adskillige forsøg har jeg opgivet ved egen hjælp at få det til at virke.

Nedenunder er den kode jeg gerne skulle have til at virke ved hjælp af en ekstern XML fil:

<script type="text/javascript">

if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest("");
  }
else // Internet Explorer 5/6
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
   
xmlhttp.open("GET","DownloadedFile.xml",false);

xmlhttp.send("");

xmlDoc=xmlhttp.responseXML;

document.write("<table border='1'>");
document.write("<tr><td>");
document.write("Film Titel");
document.write("</td><td>");
document.write("Film Nr.");
document.write("</td></tr>");

var x=xmlDoc.getElementsByTagName("Movie");

   
for (i=0;i<x.length;i++)
  {
    var movieNo=x[i].getAttribute("No");

document.write("<tr><td>");
document.write(x[i].getElementsByTagName("Name")[0].childNodes[0].nodeValue);
document.write("</td><td>");
document.write(x[i].getAttribute("No"));
document.write("</td></tr>");
}

document.write("</table>");
</script>


Filen "DownloadedFile.xml" fås fra følgende url:
"http://www.ebillet.dk/system/export.asmx/GetEvents?nStartDate=0&nStartTime=0&nEndDate=0&nEndTime=0&nSystemNo=3&nOrgNo=170&nWebMovieNo=0"

SOAP request & response kan ses her (Har ikke helt forstået meningen med dem): "http://www.ebillet.dk/system/export.asmx?op=GetEvents"

Grunden til at jeg ikke kan bruge filen på min egen ftp server er at den skal hente de nyeste oplysninger fra XML filen når siden bliver åbnet.

Håber der er hjælp at hente derude :)
Avatar billede arne_v Ekspert
16. december 2009 - 21:17 #1
Send din HTTP request server side og brug et web service kald som kan skjule al SOAP XML'en fra dig og give dig et helt almindeligt kalde API.
Avatar billede kriax Nybegynder
16. december 2009 - 21:24 #2
Hej Arne

Jeg er desværre helt grøn på det her felt, så når du skriver "web service kald" "kalde API" så er jeg desværre allerede stået af :) Jeg havde håbet det var noget der let kunne ændres i den eksisterende kode. Tror du, du kan vise et eksempel?
Avatar billede arne_v Ekspert
16. december 2009 - 21:29 #3
Hvad koder du i server side ? PHP ? ASP.NET ?
Avatar billede kriax Nybegynder
16. december 2009 - 21:31 #4
Igen lidt grøn, men så vidt jeg kan se er det ASP.NET :)
Avatar billede arne_v Ekspert
16. december 2009 - 21:40 #5
I ASP.NET kan du lave en web reference til en WSDL URL og kalde web servicen der.
Avatar billede kriax Nybegynder
16. december 2009 - 22:00 #6
Som skrevet er jeg fuldstændig grøn på det her felt og føler mig lidt som en blind mand der bliver skubbet ud i et minefelt da jeg kun er i gang med denne opgave fordi det er den eneste udvej i min situation :)

Har været omkring og læst om WSDL i min søgen, men har desværre ikke kunne finde ud af at bruge det til at få fat i XML filen.

Jeg ved ikke om det er for besværligt for dig at modellerer koden om så den burde kunne virke, men hvis det er så ved jeg da nu at jeg skal rette lommelygten mod noget ved navn "WSDL URL" og så håbe på at jeg kan finde en løsning.

Som skrevet, meget grøn på det her felt, og meget i tvivl om nogle af de navne du giver mig :) Lærer bedst med konkrete eksempler, men kan godt forstå at det kan være trættende at skrive dem.
Avatar billede arne_v Ekspert
20. december 2009 - 02:33 #7
Prøv og google på:

asp.net consume web service
Avatar billede kriax Nybegynder
07. juni 2010 - 12:38 #8
Lukker. Svar fundet på anden vis.
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