Flash CS3: επικοινωνία με ένα Web Server
Παρασκευή, 14 Δεκεμβρίου, 2007 ActionScript 3,0 εισάγει μια σειρά από δεινός μέσα επικοινωνίας, κάποια εντελώς νέα, αναθεωρημένη και βελτιωμένη άλλοι από την προηγούμενη έκδοση του ActionScript. Θα αρχίσετε να βλέπετε τις αλλαγές ως τρόπο να αλληλεπιδρά με ένα Web Server σε περίπτωση που πρόκειται για απλή επικοινωνία μεταξύ Flash και μια σελίδα με PHP XML απάντηση. Πρώτα από όλα, το αντικείμενο XML δεν υπάρχει πια! Σε ActionScript 3,0 εισήχθησαν νέες κατηγορίες, ορισμένες από τις οποίες είναι αφιερωμένη στην "πίσω".
Σημείωση: XML τάξη (μαζί με τις σχετικές κατηγορίες) ActionScript 2,0 XmlDocument μετονομάστηκε και εγκαταστάθηκε στο πακέτο flash.xml. Είναι περιλαμβάνονται στο ActionScript 3.0 για την εξασφάλιση της συμβατότητας με παλαιότερες εκδόσεις.
Σε ActionScript 2,0 επιτρέπει την επικοινωνία με Web Server ήταν συχνά επιλυθεί με τη χρήση του σε συνδυασμό αντικειμένων LoadVars και XML, χρησιμοποιώντας τη μέθοδο sendAndLoad() LoadVars (Βλέπε: Flash: LoadVars XML και να στείλει δεδομένα POST). Τώρα τα πράγματα αλλάζουν, όμως μόλις συνηθίσουν σε νέα ονόματα και αντικείμενα. Όπως αναφέρεται στο εγχειρίδιο, στο γεγονός:
Οι η XmlDocument τάξη αντιπροσωπεύει XML αντικείμενο που ήταν πριν από την περίοδο αυτή σε ActionScript 2.0. Το όνομα άλλαξε σε XmlDocument σε ActionScript 3.0 για την αποφυγή των συγκρούσεων με το όνομα της νέας τάξης XML ActionScript 3.0. Σε ActionScript 3.0, η νέα τάξη χρήση XML και σχετικές κατηγορίες, που στηρίζουν E4X (ECMAScript για XML).
Η XmlDocument κλάσης, όπως XmlNode και XMLNodeType, είναι να εξασφαλίζεται η συμβατότητα αναδρομική. Η λειτουργικότητα της φόρτωσης XML έγγραφα είναι πλέον παρέχονται από URLLoader κατηγορίας.
ActionScript 3,0 βελτιώνει τα πράγματα, έστω και αν εκ πρώτης όψεως τις τάξεις ενδιαφέρονται περισσότερο από πριν. Στην συγκεκριμένη περίπτωση μας σε αντικείμενα που πρόκειται να χρησιμοποιήσετε είναι: URLVariables URLRequest URLLoader και XML.
Εδώ είναι ένα παράδειγμα για την αποστολή και λήψη:
- URLVariables ( ) ; var μεταβλητές: URLVariables = νέα URLVariables ()?
- ; μεταβλητές. myVariation = "Hello"?
- URLRequest ( ) ; var αίτημα: URLRequest = νέα URLRequest ()?
- ; αίτηση. url = "http://www.miodominio.com/miapagina.php"?
- ; αίτηση. μέθοδο = URLRequestMethod. POST?
- αίτηση. μεταβλητών δεδομένων =?
- URLLoader ( ) ; var φορτωτής: URLLoader = νέα URLLoader ()?
- ; φορτωτή. dataFormat = URLLoaderDataFormat. ΚΕΙΜΕΝΟ?
- Event. COMPLETE , completeHandler ) ; φορτωτή. addEventListener (Event. COMPLETE completeHandler)?
- δοκιμάστε (
- request ) ; φορτωτή. φορτίου (αίτηση)?
- ( error : Error ) { ) Κατς (σφάλμα: Σφάλμα) (
- "Errore nel caricamento dell' URL" ) ; Trace ( "Σφάλμα κατά τη φόρτωση του 'URL')?
- )
- event:Event ) : void { completeHandler λειτουργία (περίπτωση: Event): άκυρη (
- = XML ( event. target . data ) ; var x_xml: XML XML = (event. στόχο. δεδομένων)?
- x_xml ) ; ίχνος (x_xml)?
- )
Η πλευρά του διακομιστή (miapagina.php) προφανώς δεν αλλάζει. Σε σύγκριση με το παράδειγμα που παρουσιάζεται σε Flash: LoadVars XML και να στείλει δεδομένα POST παρατηρήσετε ότι το αντικείμενο LoadVars χρησιμοποιήθηκε σε ActionScript 2.0 είναι ως όχημα των μεταβλητών, όπως είναι θέμα POST στέλνει μέσα από τη μέθοδο sendAndLoad() Σε ActionScript 3.0, οι δύο αυτές λειτουργίες αυτές πραγματοποιούνται από δύο ξεχωριστά αντικείμενα: URLVariables ως όχημα των μεταβλητών (GET ή POST) και URLLoader να στείλετε. Ο διαχωρισμός, βέβαια, βελτιώνει την κατάσταση, επειδή μας δίνει δύο αντικείμενα "αφιερωμένη", η οποία, μεταξύ άλλων, διαδραματίζουν σημαντικό πολλές (και καινοτόμος) πρόσθετα καθήκοντα - όπως θα δούμε στο μέλλον.
Σε αυτό το θέμα (σε πολύ μεγάλο ActionScript 3.0) επανέλθω αργότερα, αν εξετάσουμε τις μεγάλες ειδήσεις και για άλλα στοιχεία για την επικοινωνία και σύνδεση με τον web server.


















Αφήστε ένα σχόλιο