Te beginnen met de WebSocket zal vandaag beginnen

, goedgekeurd WebSocket vandaag,,,,,,,,,, 39, 43, aandelen,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, een van de meest coole nieuwe functie zal het WebSocket is, dat we niet met de server van Ajax verzoeken.In deze handleiding zullen wij de balans van de werking van WebSocket PHP server - proces, en het opzetten van een cliënt het verzenden en ontvangen van berichten WebSocket protocol,,,,,, WebSockets is?,, WebSockets is een communicatie in twee richtingen (TCP) in een stopcontact, een soort duwen.Op dit moment is het nog steeds, standaard W3C; echter, chroom en de nieuwe versie van de steun WebSockets safari.,,,, wat WebSockets vervangen?WebSockets kan vervangen,, lang peilingen.Dit is een interessant concept, de cliënt van een verzoek aan de server... Het kan nu niet, het behoud van de verbinding open tot de meest recente gegevens, de meest recente gegevens is klaar om onder de cliënt ontvangen, en stuur een ander verzoek.Dit zijn voordelen heeft: een vermindering van vertragingen is één van hen, als een verband al open heeft geen behoefte aan een nieuwe verbinding opzetten.Maar, generaal peilingen is niet echt een mooie technologie: het verzoek om een time - out is stuk dus mogelijk een nieuwe verbinding zal moeten worden. Veel Ajax aanvragen, door gebruik te maken van de - meestal worden toegeschreven aan de geringe bestedingsgraad van de middelen, niet als diensten., wakker op een ochtend wakker werd. Stuur De gegevens naar wil luisteren, die zonder een vooraf vastgesteld in verband met de klanten niet goed?Welkom in de wereld van de technologie.Stap 1:,,, naar WebSocket server, van deze handleiding zal meer gericht op de gebouwen van klanten in plaats van de uitvoering van de server, gebruik ik de flash DRIVE., op Windows 7 PHP server op lokaal niveau.Pak een phpwebsockets PHP WebSocket server.(noot: ik heb deze versie, heb ik een aantal vragen een aantal wijzigingen aangebracht, en opgenomen in het dossier van de bron) hebben een aantal WebSocket bereiken; als dat niet werkt, kan je proberen een andere nog steeds les.,,, jwebsocket (Java) ('), ruby, netwerk zit, zit. IO module (module. Is), start de Apache,,,,,, stap 2: de wijziging van de URL en havens, volgens uw omgeving de server, zoals geregeld. Klasse. Php, openbare functie, __construct ($gastheer ='localhost, haven voor $8000 dollar, max = 100) {% Dit *; createsocket (als gastheer, de haven dollar);}, rond en veranderen, in voorkomend geval, drie stappen:.,, begonnen met de oprichting van een klant, laat een van de modellen, dit is mijn client.php fiLe:, en het;.Doctype: //europa.eu.int /comm /> < http: //europa.eu.int > < hoofd > < script src = 'http: //Ajax. Googleapis. COM /Ajax /Lips /JQuery 1.4.2 /. Js "> < /scripts > < titel GT; WebSockets cliënt < /titel > < /hoofd *; < lichaam > < div =" pakket "> < div =" CONTAINER "> < H1 > WebSockets cliënt < /H1 > < div =" chatlog "> < /div > <.-&#chatlog - > < P id = "voorbeeld" > zoals de poging om de "hallo", "naam", "de leeftijd", "vandaag" < /P > < id = "tekst" type "tekst" /> < knop id = "ontkoppel" > open < /knop > < /div > <.- #container --> < /div> < /body> < /html> in deze code goed, dus, we hebben een eenvoudig model? Het creëren van een doos voor de input te log, een doos, en een disconnect zijn,,, stap 4: toevoegen wat de CSS, niets dat ze Ruimte, die elementen,., dat lichaam {font-family:Arial, helvetica, sans serif;} #container{border:5px vaste grey; width:800px; margin:0 -; padding:10px;} #chatLog{padding:5px;: vaste zwart;} #chatLog P {} {margin:0;.Event color:#999;}.Warning{font-weight:bold; color:#CCC;},,, stap 5: WebSocket gebeurtenissen, de eerste, alsjeblieft, en het proberen te begrijpen het idee van de gebeurtenissen WebSocket events.,,,,, ik ben er zo. Met behulp van drie events:,,, onopen:, als een stopcontactOpen,,, als een boodschap: e - mail:,, is op een nauwe, wanneer een stopcontact is gesloten,,, maar hoe we dat bereiken?Ten eerste, het creëren van een object, WebSocket, var stopcontact = nieuwe WebSocket ("WS://lokale: 8000 /contrastekker /server /startdaemon s"); en controleer de gebeurtenissen, is eenvoudig:,, socket.onopen = functie) (signalering (') zijn geopend. ")Maar als we het bericht ontvangt, en wat is het?,, socket.onmessage = functie (MSG) (signalering (MSG); ///////is geweldig.}, echter, laten we voorkomen dat een waarschuwing van het frame, in feite heeft ons geleerd dat de cliënt van 'stap 6:.,,,.,, oké, laten we beginnen.Ten eerste hebben we de code in de documenten klaar is, dan kijken we of de gebruikers in staat worden gesteld WebSockets browser.Als ze dat niet doen, hebben we nog een link op http: //europa.eu.int browser.,, $(document). Voorbereiding (functie) (als (.("WebSocket raam)) {% ("&#chatlog, de knop,&#voorbeeld). Uit de ("snelle"); $("< p> Oh, nee, je moet een browser, steun voor de WebSockets.Hoe de < href = "http: //www. COM /CR" > Google chroom < />?< /P > "("). Appendto&#container "); ///////WebSockets verbindt de gebruikers of {}); de functie van (verbinding () {///////de functie van de volgende}}) in verband met de code; en, zoals je kunt zien, als je WebSockets en dan noemen we de verbinding ().Dit is de kern van de functie: toen we begonnen met open en gesloten en ontvangen, zullen wij de definitie van de gebeurtenissen. Onze server URL, var, de kassen; var gastheer = "WS://lokale: 8000 /contrastekker /server /startdaemon s";,, wacht, http daar, op die website.????????Oh, dit is een WebSocket URL, dus, het gebruik van een andere overeenkomst.Hier is een van onze URL puin door:,,, laten we blijven verbinden (is).We zullen ons de code in een poging /catcher Block, dus als er sprake is van een fout, en we kunnen de gebruikers weten.We creëren een nieuwe WebSocket, en door middel van sms - berichten, ik leg het later wel uit.Wij maken ons open en gesloten, een bericht.Let op, we laten ook zien dat de positie van de gebruiker af; het is niet nodig, maar ik kan beter hier helpen.,,, in verband met de = 0 = 1, open, dicht, = 2,,, functionele verbinding () {proberen {VAR zit; var gastheer = "WS://Lokale: 8000 het stopcontact /diensten /startdaemon /. S"; var zit = nieuwe WebSocket (voorzitter); informatie ("< P =" gebeurtenis "> de status van" + zit: kom. ReadyState); socket.onopen = functie) (bericht ("< P =" gebeurtenis "> de status van" + zit: kom. ReadyState + "()");} socket.onmessage = functie (MSG) {News ("< P =" nieuws "> ontvangen:" + mononatriumglutamaat. Gegevens);} socket.onclose = functie) (bericht ("< P.= "gebeurtenis" > de status van "+ zit: kom. ReadyState +" (gesloten) ");}} vangst (abnormale) {News (" < p>, onjuiste en uitzonderingen);}}, of) functie is heel eenvoudig, gaat het om een tekst die wij willen geven De gebruikers en worden toegevoegd aan de chatlog.We creëren een stopcontact gebeurtenissen, waarom slechts een Lid - post in de Lid - categorieën.,, de functie van de boodschap (MSG) {% ("# chatlog"). De aanvullende (MSG + "< /P >");},,, tot nu toe, als... Heb je een rechte spoor tot het punt, goed gedaan!We hebben een fundamentele http: //europa.eu.int /CSS - model, het creëren van een WebSocket verbonden, dat de gebruikers voor de vooruitgang en de verbinding met de actualisering.,,,, 7: doorgeven van gegevens, stap nu in plaats van met een knop indienen, kunnen we dat als de gebruiker op het toetsenbord terug sturen.Ik zie het onder de 13 is de sleutel voor de ASCII - zijn ', en $('#text'.Keypress (functie) (C) (als (event.keyCode = = = = = = = 13) {}}). (;); en here's. (), en de function:, functie, stuur () {VAR tekst = $('#text') val (); als (text== "{") ('< P = de boodschap "waarschuwing" > toets a message'); terug;} probeer {socket.send (tekst); f ("< P =" gebeurtenis "> Sent:'+text)} vangst (uitzonderingen) (P ='< of" waarschuwing "> Error:'+ uitzonderingen);} $('#text') val (" ");}, herinner jij je wat je zie boven, a bit van code dikke kunnen zijn, maar in werkelijkheid hebben we echt nodig hebben, de code:,, socket.send (); //Thanks javascript, de extra code.Iets doen: opsporen, als de gebruiker niet in iedere inhoud, maar nog steeds vechten terug, de afwikkeling van de input en de boodschap van functies, zoals de stappen 8: het sluiten van het stopcontact zit, is heel eenvoudig: aanvullende procedures voor de behandeling van een klik op de knop, we, we hebben het gedaan!,,, $("# schuld"). Daarna (functie) (stopcontact. ();});,,, de voltooiing van de javascript. $(document). Voorbereiding (functie) (als (.("WebSocket raam)) {% ("&#chatlog, de knop,&#voorbeeld). Uit de ("snelle"); $("< p> Oh, nee, je moet een browser, steun voor de WebSockets.Hoe de < href = "http: //www. COM /CR" > Google chroom < />?< /P > "("). Appendto&#container "); ///////WebSockets verbindt de gebruikers of {}); de functie van (verbinding () {VAR zit; var gastheer =" WS://lokale: 8000 /contrastekker /server /startdaemon s "; proberen {VAR stopcontact = nieuwe WebSocket (de gastheer); informatie (" < P = "gebeurtenis" > de status van "+ zit: kom. ReadyState); socket.onopen = functie) (bericht (" < P = "gebeurtenis" > de status van "+ zit: kom. ReadyState +" () ");) socket.onmessage = functie (MSG) {News (" < P = "nieuws" > ontvangen: "+ mononatriumglutamaat. Gegevens);} socket.onclose = functie) (bericht ("< P = "gebeurtenis" > de status van "+ zit: kom. ReadyState +" (gesloten) ");}} vangst (abnormale) {News (" < p>, onjuiste en uitzonderingen); b) de functie van () {VAR tekst = $("val&#tekst"). (de); als (UEN = = "(" ") {nieuws < P =" waarschuwing "> gelieve een bericht terug te keren;} {"); het stopcontact proberen. Berichten (tekst); ("< P =" gebeurtenis "> sturen: +} vangst (tekst) abnormale) {nieuws (" < P = "waarschuwing" > ");} $("&#tekst ") (" "). -;} functie (MSG) {%.("# chatlog"). De aanvullende (MSG + "< /P >");} $("# tekst). De sleutels (functie (gebeurtenissen) {als (in het geval van = = 13) {}); send (}); $("&#"gebroken"). (functie) (kassen). (;)) //////////////.}} einde is verbonden met andere});,,, stap negen: exploitatie van WebSocket server, we moeten het commando op bezoek.Gelukkig is er een geschikte huisvesting optie de flash DRIVE.Klik op "Shell" in het controle paneel invoeren, de flash DRIVE, en: PHP Q weg, en server.php,, je hebt nu een WebSocket server.,,,.,,, als een pagina 's, die zal worden vastgesteld (WebSocket probeer de code om gebruikers /open opties).En dan, kan de gebruiker in de boodschap van de server en ontvangen van berichten.Dank je, lezen en ik hoop dat je genoten hebt van de training.Weet je nog, als WebSockets mogelijk, iets zou veranderen.Kan je naar hier naar de nieuwe W3C, WebSocket API.










Previous:
Next Page: