ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

Webǰ¶Ë¿ª·¢Åàѵ֮ǰºó¶Ë½»»¥Ö¸ÄÏ

¸üÐÂʱ¼ä:2016Äê11ÔÂ17ÈÕ15ʱ54·Ö À´Ô´:ÀÖÓã²¥¿Íwebǰ¶Ë¿ª·¢ÅàѵѧԺ ä¯ÀÀ´ÎÊý:

×÷Ϊ¸Õ½Ó´¥Ç°¶ËµÄ²»¾ÃµÄͯЬ£¬´ó¼Ò¶¼»áÐË·ÜÓÚCSSºÍJSËù´øÀ´Æ¯ÁÁ½çÃæ£¬È»¶ø£¬Ç°¶Ë¹¤³Ìʦ³ýÁËUIÖØ¹¹Í⣬»¹Óзdz£ÖØÒªµÄÖ°ÔðÔÚÕýÈ·µÄÇøÓòäÖȾ³ö·þÎñ¶ËµÄÊý¾Ý¡£±Ï¾¹£¬ÎÒÃÇÒª¹¹½¨Ò»¸ö´óµÄwebÓ¦Ó㬱ØÈ»²»ÊÇÆÕÆÕͨͨµÄ¾²Ì¬Ò³Ãæ¹¹³É¡£

ÏÂÎĽ«ÂÞÁн«À´Ç°¶Ë¹¤³ÌʦӦ¸Ã±Ø±¸µÄͬºó¶Ë´ò½»µÀµÄ³£Óü¼ÄÜ¡£

·þÎñ¶ËäÖȾ:

̸Æð·þÎñ¶ËäÖȾ£¬¶ÔÓÚ¶¯Ì¬·þÎñ¶øÑÔ£¬Õâ¸öÊÀ½çÉÏÅܵĴó¶àÊýÒ³Ãæ¶¼¾­Àú¹ý·þÎñ¶ËµÄÊý¾ÝäÖȾ£¬½Ó¿Ú->ǰ¶Ë¸³Öµ->Ä£°æäÖȾ ¡£ÕâÒ»Çж¼ÔÚ·þÎñÆ÷Íê³É£¬ÎÒÃDz鿴ԴÂëʱºò£¬¿ÉÒÔ¿´µ½ÍêÕûµÄhtml´úÂ룬°üÀ¨Ã¿¸öÊý¾ÝÖµ¡£

³£ÓõÄphpÄ£°æÓУ¬Smarty,Blade,Mustache,Èç¹ûÄãÃÇÍŶÓʹÓÃSmarty£¬ÎÒÃÇ¿ÉÒÔ¿´µ½Ò»Ð©viewµÄÎļþÀï»áǰÌ×SmartyµÄÄ£°æÓïÑÔ;

¡¡¡¡

[HTML] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
<font style="color:rgb(51, 51, 51)"><div> {foreach $list as $item} <h3>{$item['name']}</h3> <p>{$item['desc']}</p> {/foreach} </div></font>

Èç¹ûNode,js×÷Ϊ·þÎñ¶ËµÄ»°£¬Õâ¸öʱºòÎÒÃÇ¿ÉÒÔʹÓÃǰ¶ËÄ£°æäÖȾµÄÄ£¿é£¬±ÈÈçejs,doT,jadeµÈµÈ¡£

×¢ÒⲻͬµÄÄ£°æ¿ÉÄÜ´æÔÚ²»Í¬Ä£°æÓï·¨£¬ÐèÒª×Ô¼ºÑ§Ï°Ê¹ÓÃ.

AJAX:

µ±È»·þÎñ¶ËäÖÈ¾Ëæ×ŵ¥Ò³Ó¦ÓÃÒÔ¼°Restful½Ó¿ÚµÄÐËÆð£¬AjaxÖð½¥³ÉΪĿǰǰºó¶Ë½»Á÷×îΪƵ·±µÄ·½Ê½¡£Ajaxʵ¼ÊºËÐÄÊÇ,ÎÒÃÇͨ¹ý¶Ô¸Ã¶ÔÏóµÄ²Ù×÷À´½øÐÐÒì²½µÄÊý¾ÝÇëÇó¡£

¡¡¡¡

[HTML] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
<font style="color:rgb(51, 51, 51)">// Ò»°ãÁ÷³Ì[/color][/p]¡¡¡¡varoReq = new(); oReq.addEventListener( "load", function(res){ // your code to do something}); oReq.open( "GET", "http://www.example.org/example.txt"); oReq.send();</font>

ʵ¼ÊÉÏÎÒÃǽӴ¥µ½×î¶àjQuey¾ÍÓкܺõķâ×°£¬±ÈÈç$.ajax£¬$.postµÈ£¬Èç¹ûÓÃAngularµÄ»°ÎÒÃÇ¿ÉÒÔÓÃ$http·þÎñ£¬³ýÁËÕâЩ֮Í⣬ÎÒÃÇ¿ÉÒÔʹÓõÚÈý·½µÄAjax¿âqwestµÈ¡£

Èç¹ûʹÓÃAjaxµÄ»°£¬ÎÒÃDz»µÃ²»ÃæÁÙһЩÎÊÌ⣬ÓÉÓÚͬԴÏÞÖÆµÄÎÊÌ⣬ÎÒÃDz»µÃ²»È¥¿Ë·þÕâ¸öÎÊÌ⣬Õâ¸öʱºòÎÒÃÇ¿ÉÒÔÒªÇó·þÎñ¶Ë£¬ÉèÖÃheaderÍ·£¬header('Access-Control-Allow-Origin: *');»òÕß½ÐÉèÖÃnginxÅäÖÃ.

¡¡¡¡

[HTML] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
<font style="color:rgb(51, 51, 51)"><font style="color:rgb(51, 51, 51)">add_header 'Access-Control-Allow-Origin''http://yourweb.com'; add_header 'Access-Control-Allow-Credentials''true'; add_header 'Access-Control-Allow-Methods''GET';</font></font>

µ±È»Õâ²»ÊÇ×îºÃµÄ×ö·¨£¬Êµ¼ÊÏÖÔÚÎÒÃÇÒ²¿ÉÒÔÕâô×ö:

ajax -> ´úÀí -> API

ÎÒÃÇ¿ÉÒÔÓÃphpµÄcurl»òÕßͨ¹ý·þÎñÆ÷µÄÅäÖÃÀ´ÊµÏÖ·´Ïò´úÀí¡£´Ó¶ø´ïµ½Í¬Ô´µÄЧ¹û¡£

ǰ¶Ë¹¤³Ìʦһ¶¨ÒªÒªÇóÿ´ÎÇëÇóµÄÊý¾Ý½Ó¿ÚÒ»Ñϸñ×ñÑ­»ù´¡µÄÊý¾Ý½á¹¹ÒªÇ󣬾¡¹ÜjsÊÇÈõ±äÁ¿ÀàÐÍÓïÑÔ£¬µ«ÊÇÎÒÃÇ»¹ÊÇÓ¦¸ÃÑϸñÒªÇó£¬ÊÇÊý×飬¾Í²»Ó¦¸ÃÊǶÔÏó£¬ÊÇÊý×־Ͳ»Ó¦¸ÃÊÇ×Ö·û´®£¬ÕâÑù×öÓÐÀûÓÚ½µµÍÒþ²Øbug²¢ÇÒÌáÉýǰºó¶Ë¹¤×÷ЧÂÊ¡£

JSONP:

JSONPËã×÷JSONµÄÒ»ÖÖ"ʹÓÃģʽ"£¬¿ÉÓÃÓÚ½â¾öÖ÷Á÷ä¯ÀÀÆ÷µÄ¿çÓòÊý¾Ý·ÃÎʵÄÎÊÌâ¡£ÓÉÓÚCORSµÄÖ§³Ö£¬ÎÒÃÇ¿ÉÒÔ¼òµ¥µÄ½«Êý¾Ý·â×°³ÉÒ»¸öjs½Å±¾ÇëÇ󣬵±È»ÎÒÃÇÔÚjqueryÖлáÓõ½¡£

¡¡¡¡

[HTML] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
<font style="color:rgb(51, 51, 51)"><font style="color:rgb(51, 51, 51)">functionlogResults(json){ console.log(json); } $.ajax({ url: "https://yourapi.com/api", dataType:"jsonp", jsonpCallback: "logResults"}); Comet</font></font>

Comet:

ÁÄCometÎÒÃÇ»¹µÃ˵϶ÌÂÖѯ£¬ÓÉÓÚÄ³Ð©ÌØ¶¨µÄÒµÎñÐèÇ󣬱ÈÈç֪ͨ£¬ÎÒÃÇÐèÒªÓм°Ê±µÄÊý¾Ý¸üÐÂ,ÎÒÃÇÄܹ»Ïëµ½µÄ¾ÍÊÇʹÓÃsetIntervalÿ¸ôÒ»¶¨Ê±¼ä±ÈÈç10sÈ¥»ñȡһ´ÎÇëÇ󣬴Ӷø×öµ½Ò»Ð©Í¨Öª¸üУ¬µ«ÊÇÕâ²¢²»Ò»ÖÖ¸ßЧµÄ×ö·¨£¬Õâ»áÔö¼Ó·þÎñÆ÷µÄÇëÇóÊýÁ¿¡£Õâ¸öʱºòÓÐÁËÁíÍâÒ»ÖÖ¸ÅÄ“·´ÏòAjax”£¬ÓÉ·þÎñÆ÷½øÐÐÊý¾ÝÍÆËÍ£¬ CometÄܹ»ÈÃÐÅÏ¢½üºõʵʱµÄ±»ÍÆË͵½Ò³ÃæÉÏ£¬·Ç³£ÊʺÏÒªÇóʵʱÐԵĻñÈ¡µÄÊý¾ÝµÄÒ³Ãæ¡£

¡¡¡¡ 

ÈçͼËùʾ£¬¾ÍÊÇÒ»¸ö¼òµ¥µÄCometÄ£ÐÍ£¬¾ÍÊÇÊý¾ÝÇëÇóºó¹ÒÆð£¬Ö±µ½ÓÐÊý¾ÝÏìÓ¦ÍÆË͵½¿Í»§¶Ë£¬Õâ¸öʱºò¿Í»§¶ËÔÙ·¢ÆðÒ»¸öеÄÁ¬½Ó¡£

¡¡¡¡

ÕâÑùÏà¶ÔÀ´Ëµ¿ÉÒÔ¼õÉÙÒ»¶¨ÊýÁ¿µÄÇëÇó£¬ÒÔ¼°Êý¾ÝµÄ¼°Ê±ÏìÓ¦£¬´Ó¶øÒ»¶¨ÒâÒåµÄʵÏÖËùÎ½ÍÆËÍ¡£

¡¡¡¡

Ò»¸ö¼òµ¥µÄPHP Demo´úÂ룬¾ÍÊÇÎÒÃÇÐèÒªÕâ¶Ë´úÂëÒ»Ö±ÔËÐÐ×Å...

¡¡¡¡while( true) { set_time_limit( 0); echo 'data'; flush(); b_flush(); sleep( 3); }

JavaScript:

¡¡¡¡

[JavaScript] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
<font style="color:rgb(51, 51, 51)">[mw_shl_code=html,true]functioncreateStreamingClient(url,progress,finished){ varxhr= new(),received= 0; xhr.open("get",url, true); xhr.onreadystatechange= function(){ varresult; if(xhr.readyState== 3){ result=xhr.responseText.substring(received); received+=result.length; progress(result); }elseif(xhr.readyState== 4){ finished(xhr.responseText); } }; xhr.send( null); returnxhr; } // var client = createStreamingClient(url,fuc1,func2)</font>

SSE Server-Sent Events:

SSEÊÇÎ§ÈÆÖ»¶ÁComet½»»¥ÍƳöµÄAPI»òÕßģʽ¡£SSE APIÓÃÓÚ´´½¨µ½·þÎñÆ÷µÄµ¥ÏòÁ¬½Ó£¬·þÎñÆ÷ͨ¹ýÕâ¸öÁ¬½Ó¿ÉÒÔ·¢ËÍÈÎÒâÊýÁ¿µÄÊý¾Ý¡£·þÎñÆ÷ÏìÓ¦µÄMIMEÀàÐͱØÐëÊÇtext/event-stream£¬¶øÇÒÊÇä¯ÀÀÆ÷ÖеÄJava APIÄܽâÎöµÄ¸ñʽÊä³ö¡£

¡¡¡¡ 

ÏÖ¶ÔÓÚComet£¬ÎÒÃÇ¿ÉÒÔ¿´³öÎÒÃÇÖ»½øÐÐÁËÒ»´ÎÁ¬½Ó£¬È»ºó·þÎñ¶Ë»áÈ¥¿ØÖÆÊý¾ÝµÄÏìÓ¦£¬´Ó¶ø·¢Ë͸ø¿Í»§¶Ë¡£ÕâÑùÏà¶ÔÀ´Ëµ£¬µ«ÊÇÈçͬ¶¨ÒåµÄÃèÊö£¬ÕâÖÖÖ»ÊʺÏÖ»¶ÁÊý¾ÝµÄÇéÐΡ£±ÈÈçһЩ֪ͨºÍ״̬ÂëÕâÑùµÄ¡£SEEµÄʹÓ÷dz£¼òµ¥£¬Ö»ÐèÒªÕÆÎÕÕ⼸¸öapi¾ÍÐУº

¡¡¡¡

[JavaScript] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
2
3
4
<font style="color:rgb(51, 51, 51)">vares = newEventSource( 'http://your.api.com'[/color][/p]¡¡¡¡functionlistener(event){ console.log(event.data); } // ´´½¨Ò»¸öSSEÁ¬½Ó
¡¡¡¡es.addEventListener( "open", listener); // ÏìÓ¦»ñÈ¡ÏûÏ¢µÄʼþ
¡¡¡¡es.addEventListener( "message", listener); // ·¢Éú´íÎó
¡¡¡¡es.addEventListener( "error", listener);</font>

×¢Ò⣺Èç¹ûÔڻػ°¹ý³ÌÖÐÓö¼û´íÎóºó£¬Ä¬ÈϳÌÐò»áÖØÐ·¢ÆðÒ»´ÎеÄÁ¬½Ó£¬´Ó¶ø·ÀÖ¹¹Òµô¾Í²»ÔÙÏìÓ¦ÁË

·þÎñ¶Ë£¨node,php£©µÄ´úÂ룬¿ÉÒԲο¼£ºhttps://github.com/Yaffle/EventSource

Web Sockets:

HTML5 WebSocket Éè¼Æ³öÀ´µÄÄ¿µÄ¾ÍÊÇҪȡ´úÂÖѯºÍ Comet ¼¼Êõ£¬Ê¹¿Í»§¶Ëä¯ÀÀÆ÷¾ß±¸Ïñ C/S ¼Ü¹¹ÏÂ×ÀÃæÏµÍ³µÄʵʱͨѶÄÜÁ¦¡£ ä¯ÀÀÆ÷ͨ¹ý Java Ïò·þÎñÆ÷·¢³ö½¨Á¢ WebSocket Á¬½ÓµÄÇëÇó£¬Á¬½Ó½¨Á¢ÒԺ󣬿ͻ§¶ËºÍ·þÎñÆ÷¶Ë¾Í¿ÉÒÔͨ¹ý TCP Á¬½ÓÖ±½Ó½»»»Êý¾Ý¡£Ò²¾ÍÊÇÎÒÃÇ¿ÉÒÔʹÓÃweb¼¼Êõ¹¹½¨ÊµÊ±ÐԵijÌÐò±ÈÈçÁÄÌìÓÎÏ·µÈÓ¦Óá£

ÆäʵWeb Sockets µÄAPIºÜÉÙ£¬¾ÍÏÂÃæÕâЩ:

¡¡

[JavaScript] ´¿Îı¾²é¿´ ¸´ÖÆ´úÂë
?
1
2
3
4
5
6
<font style="color:rgb(51, 51, 51)">¡¡websocket = newWebSocket( "ws://your.socket.com:9001"); // ´ó¿ª[/color][/p]¡¡¡¡websocket.onopen = function(evt){ /* do stuff */}; //on open event // µ±web socket¹Ø±Õ
¡¡¡¡websocket.onclose = function(evt){ /* do stuff */}; // ½øÐÐͨÐÅʱ
¡¡¡¡websocket.onmessage = function(evt){ /* do stuff */}; // ·¢Éú´íÎóʱ
¡¡¡¡websocket. = function(evt){ /* do stuff */}; // Ïò·þÎñÆ÷·¢·¢ËÍÏûÏ¢
¡¡¡¡websocket.send(message); //send method
¡¡¡¡websocket.close(); //close method</font>

¶ÔÓÚ·þÎñ¶ËµÄ»°£¬PHPÖ§³ÖÁ˺ܶàsocket Ïà¹Øapi£¬µ«ÊÇÎÒÃÇ¿ÉÒÔʹÓøü¼Ó³ÉÊìµÄ¿ò¼Ü£¨ÊµÓ㩱ÈÈçphpsocket.io£¬Ratchet.µ±È»node.jsд socketÒ²·Ç³£µÃÐÄÓ¦ÊÖ£¬node.js¶Ô¸ß²¢·¢Ö§³ÖÏà¶Ô½ÏºÃ£¬¿ÉÒÔʹÓÃhttp://socket.io/¡£

·þÎñ¶Ë´ó¸Å»á×öÏÂÃæµÄÊÂÇé: + ´´½¨Ò»¸ösocket + °ó¶¨µØÖ·ºÍ¶Ë¿Ú + ¼àÌý½øÈëµÄÁ¬½Ó + ½ÓÊÕеÄÁ¬½Ó + web socket ÎÕÊÖ + ½âÂëÊý¾Ý


С½á:

˵ÁËÄÇô¶à¼òµ¥×ܽáÏ£¬´ó¼ÒÏëÃ÷°×¼¸µã¾ÍÐÐÁË£¬¿Í»§¶ËÓë·þÎñ¶ËË­ÏÈÖ÷¶¯£¬ÊÇ·ñÇ¿µ÷Êý¾ÝµÄʵʱÐÔ¡£

  • AJAX - ÇëÇó → ÏìÓ¦ £¨Æµ·±Ê¹Óã©
  • Comet - ÇëÇó → ¹ÒÆð → ÏìÓ¦ £¨Ä£Äâ·þÎñ¶ËÍÆËÍ£©
  • Server-Sent Events - ¿Í»§µ¥ ← ·þÎñ¶Ë £¨·þÎñ¶ËÍÆËÍ£©
  • WebSockets - ¿Í»§¶Ë ? ·þÎñ¶Ë (δÀ´Ç÷ÊÆ,Ë«¹¤Í¨ÐÅ)


    ±¾ÎİæÈ¨¹éÀÖÓã²¥¿Íwebǰ¶Ë¿ª·¢Ñ§ÔºËùÓУ¬»¶Ó­×ªÔØ£¬×ªÔØÇë×¢Ã÷×÷Õß³ö´¦£¬Ð»Ð»£¡
    ×÷ÕߣºÀÖÓã²¥¿Íwebǰ¶ËÅàѵѧԺ£»
    Ê×·¢£ºhttp://www.itcast.cn/web/ 
0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿