我們繼續來看client的websocket怎麼做吧!
<script>
(function(){
#這一段可以讓程式碼隨時知道頁面上有什麼變化
})();
</script>
先宣告一個websocket連線,注意URL的格式:ws://ip:端口
<script>
(function(){
var key='all',mkey;
var users={};//存放user的列表
var url='ws://要連接的ip:端口';
var so=false,n=false;
#A.$('us')指的是取名為us的節點
var lus=A.$('us'),lct=A.$('ct');
so=new WebSocket(url);//宣告websocket
})();
</script>
宣告完之後要做握手的動作
<script>
(function(){
var key='all',mkey;
var users={};//存放user的列表
var url='ws://要連接的ip:端口';
var so=false,n=false;
#A.$('us')指的是取名為us的節點
var lus=A.$('us'),lct=A.$('ct');
so=new WebSocket(url);//宣告websocket
//握手監聽函數
so.onopen=function(){
//狀態為1證明握手成功,然後把client自定義的名字發送過去
if(so.readyState==1){
so.send('type=add&ming='+n);
}
}
//握手失敗或者其他原因連接socket失敗,則清除so對象並做相應提示操作
so.onclose=function(){
so=false;
//握手失敗在頁面上顯示退出聊天室
lct.appendChild(A.$$('<div class="dialog-me" ><div class="dialog-content-me">退出聊天室</div></div>'));
}
})();
</script>
lct.appendChild()這個部份是指在lct的節點下新增東西,
也就是將聊天訊息一直往下增長的效果.
握玩手之後再來要做訊息監聽的部份,
我們留在下一章說明~~