J'ai besoin d'appeler une méthode dans le service Web et de lui passer les paramètres du script d'action 3.0 Quelqu'un peut-il m'aider? Je cherchai sur Internet et a trouvé des solutions avec flex et je ne travaille pas avec flex je travaille avec le script d'action 3.0Appel d'une méthode dans le service Web dans le script d'action 3.0
Répondre
J'utilise quelque chose comme ceci:
var request:URLRequest = new URLRequest();
request.url = 'http://example.org';
// If you're POSTing data:
request.method = URLRequestMethod.POST;
request.data = new URLVariables({ /* Your object */ });
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES; // If you're using POST
try {
loader.load(request);
} catch(error:Error) {
// Handle error
}
trace(loader.data); // Result
Documentation:
Voici le code que j'ai utilisé dans l'un de mes projets Flex ...
import mx.rpc.soap.WebService;
public var service:WebService = new WebService();
override protected function initializationComplete():void
{
service.wsdl = "http://localhost:1133/YourService.asmx?wsdl"
// GetPayload is the method name you're calling on your web service
service.GetPayload.resultFormat = "e4x";
service.GetPayload.addEventListener("result", yourResultHandler);
service.GetPayload.addEventListener("fault", yourFaultHandler);
// Method to call once the WSDL is loaded
service.addventListener(LoadEvent.LOAD, loadHandler);
service.loadWSDL();
}
Alors voici ce qui se passe une fois que le WSDL est chargé
protected function loadHandler(event:LoadEvent):void
{
// send() takes the service parameters
service.GetPayload.send("Product");
}
Vous avez juste besoin d'écrire les deux méthodes pour gérer le XML retourné par vos services (les données sont renvoyées au format e4x:
protected function yourResultHandler(event:ResultEvent):void
{
_messageXml = XML(event.result);
}
proteted function yourFaultHandler(event:FaultEvent):void
{
Alert.show(event.toString());
}
Je n'utilise pas Flex, j'ai mentionné dans ma question que j'ai besoin d'une solution pour appeler la méthode dans web servie dans Action Script 3.0 – Ahmy
Vous n'avez pas besoin d'utiliser Flex pour utiliser l'espace de noms mx.rpc.soap.WebServices. –
lorsque je l'importe dans Action Script 3.0, il me signale: 1172: Définition mx.rpc.soap: WebService est introuvable. ??????????????????????????? – Ahmy
vous pouvez utiliser les services Web par l'un de la méthode délicate d'abord vous faire swf par compilé dans un environnement flexible qui comprend le diablotin ort instructions de webservice comme importer mx.rpc.webservices. Maintenant, compilez-le, vous obtiendrez un swf. maintenant vous allez à as3.0 et faites un movieclip vide sur scène et dans la propriété linkage mettez l'importation pour le partage à l'exécution et mettez le a.swf (ex) dans la zone de texte dans sharing.now vous pouvez importer l'instruction dans votre fichier script d'action importer mx.rpc.webservices.and utiliser la même méthode que flex. certainement vous serez en mesure d'accéder aux services Web ....
Mr.Ron j'ai mentionné dans ma question que je dois appeler une méthode dans un service Web pour ne pas demander de fichier ou de page. Le code que vous avez écrit convient pour demander la page Asp, mais dans le service web, le problème est différent et nous devons utiliser SOAP et encapsuler les données à l'intérieur. Lisez la question avant d'atteindre – Ahmy
Ahmy, j'ai lu votre question, mais vous n'avez pas spécifié un service Web basé sur SOAP. Il existe plusieurs types de services Web. Ma réponse est orientée vers les services RESTful parce qu'ils ont été populaires récemment. –
S'il s'agit d'un service .Net, vous pouvez facilement activer les appels POST et GET à côté du SOAP par défaut. Il est intégré, juste un paramètre qui doit être retourné. –