Risposta da WS HTML encoded

venerdì 18 luglio 2014 - 17.08
Tag Elenco Tags  C#  |  .NET 3.5  |  .NET 4.0  |  Visual Studio 2010  |  Visual Studio 2008  |  Visual Studio Express  |  Javascript

vankraster Profilo | Newbie

Sono riuscito a connettermi al WebService tramite Javascript da una pagina html sto inviando come risposta da WS
"<img src="http://www.miosito.com/img/logo.png"/>"
il problema è che il risultato sulla pagina html è
&lt;img src="http://www.miosito.com/img/logo.png"/&gt;

è HTML encoded tuttavia ho osservato che la risposta non è solo questa ma bensi
<string xmlns="http://www.mywebsite.com">&lt;img src="http://www.miosito.com/img/logo.png"/&gt;</string>

quindi non è tutto encoded solo quello che è dentro <string xmlns="http://www.mywebsite.com">

0v3rCl0ck Profilo | Guru

secondo me devi parsare la risposta come xml, jquery.parseXML dovrebbe fare tutto lui e ritornarti un oggetto già perfettamente utilizzabile:

http://api.jquery.com/jquery.parsexml/

<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery.parseXML demo</title> <script src="//code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <p id="someElement"></p> <p id="anotherElement"></p> <script> var xml = "<rss version='2.0'><channel><title>RSS Title</title></channel></rss>", xmlDoc = $.parseXML( xml ), $xml = $( xmlDoc ), $title = $xml.find( "title" ); // Append "RSS Title" to #someElement $( "#someElement" ).append( $title.text() ); // Change the title to "XML Title" $title.text( "XML Title" ); // Append "XML Title" to #anotherElement $( "#anotherElement" ).append( $title.text() ); </script> </body> </html>


Michael Denny | Visual C# MVP
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
http://mvp.microsoft.com/mvp/Michael%20Denny-5000735
Twitter: @dennymic

vankraster Profilo | Newbie

sono riuscito a fare una risposta di caratteri html come codici UNICODE, quindi adesso il problema si pone al contrario convertire i codici UNICODE in caratteri utilizzando javascript.

0v3rCl0ck Profilo | Guru

se hai una stringa come questa:

\u003cb\u003eleft\u003c/b\u003e

javascript è già in grado di interpretarla, in altre parole questo codice js restituisce true:

'\u003cb\u003eleft\u003c/b\u003e' == '<b>left</b>'; // true

fonte: http://stackoverflow.com/a/9932998/1082342


quindi non hai bisogno di nessuna conversione



Michael Denny | Visual C# MVP
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
http://mvp.microsoft.com/mvp/Michael%20Denny-5000735
Twitter: @dennymic

0v3rCl0ck Profilo | Guru

oppure dai un occhio anche qui:

http://stackoverflow.com/a/7885499/1082342



Michael Denny | Visual C# MVP
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
http://mvp.microsoft.com/mvp/Michael%20Denny-5000735
Twitter: @dennymic
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5