Comunidad de diseño web y desarrollo en internet online

Visual Studio 2008 Web Service y Flash

Citar            
MensajeEscrito el 03 Nov 2010 06:01 am
Hola!

Recurro nuevamente al conocimiento colectivo del buen CristaLab... :cool:

En esta ocasión trabajo en tomar información de una base de datos de MS SQL desde flash!

La propuesta es hacerlo con un webservice, el asunto es que no tengo idea de como usarlo desde flash.

He buscado por toda la internet y me ofrecen importar librerias "mx".... algo que no sé de donde obtenerlas o como exactamente utilizarlas, otra alternativa es a través del GET y POST convencional perooo no sé como usar ninguno de los dos :(

Agradeceré a quién me explique como usarlos o me diga donde obtener un ejemplo preciso, conciso y actual :)

Mil gracias :D

Por driegon

36 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 03 Nov 2010 07:48 am
ok, ya lo logré :) y como me ha pasado anteriormente que luego me sirve nuevamente la información (y probablemente no solo a mi ;)) explicaré como lo hice :D


primero creamos un par de web services en el visual estudio:



Si presionamos F5 comienza el debugging y obtenemos algo como esto:



Si hacemos click sobre HelloWorld2, nos lleva a una página de donde nos interesa esta sección:




de donde podemos copiar este codigo:

Código XML :

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <HelloWorld2 xmlns="http://tempuri.org/">
      <cuenta>string</cuenta>
    </HelloWorld2>
  </soap12:Body>
</soap12:Envelope>


que es el que se enviará a través del siguiente código en flash:

Código ActionScript :

import flash.events.Event;

var xmlString:String = "<?xml version='1.0' encoding='utf-8'?>"+
"<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'"+
"xmlns:xsd='http://www.w3.org/2001/XMLSchema'"+
"xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'><soap:Body>"+
"<HelloWorld2 xmlns='http://tempuri.org/'><cuenta>1234</cuenta></HelloWorld2>"+
"</soap:Body></soap:Envelope>";
var book:XML = new XML(xmlString);
var xmlResponse:XML;

var xmlURLReq:URLRequest = new URLRequest("http://localhost:49912/WebSite1/Service.asmx?op=HelloWorld2");
xmlURLReq.data = book;
xmlURLReq.contentType = "text/xml";
xmlURLReq.method = URLRequestMethod.POST;
var xmlSendLoad:URLLoader = new URLLoader();
xmlSendLoad.addEventListener(Event.COMPLETE, onComplete, false, 0,
true);
xmlSendLoad.addEventListener(IOErrorEvent.IO_ERROR, onIOError,
false, 0, true);
xmlSendLoad.load(xmlURLReq);

function onComplete(evt:Event)
{
   trace(xmlSendLoad.data);
}

function onIOError(evt:Event){
   
}


y del que obtendremos el siguiente resultado:

Código XML :

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><HelloWorld2Response xmlns="http://tempuri.org/"><HelloWorld2Result>Hello World2</HelloWorld2Result></HelloWorld2Response></soap:Body></soap:Envelope>


que no nos queda más que parsear para obtener el valor que queremos:

Código XML :

<HelloWorld2Result>Hello World2</HelloWorld2Result>


Cualquier duda a la orden ;)

Por driegon

36 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.