Mac環(huán)境下Leaf框架游戲服務(wù)器開發(fā)(二)- 網(wǎng)絡(luò)通信
今回目- 網(wǎng)絡(luò)通信
網(wǎng)絡(luò)游戲自然離不開網(wǎng)絡(luò)通信,這也作為Leaf的一個重要組成部分和消息通信機(jī)制緊密結(jié)合在一起。
首先要說的是,Leaf的通信地址和端口都配置在服務(wù)器工程的bin/conf/server.json 文件中
類似如下:
這里配置了TCP和WebSocket的通信地址,均為“127.0.0.1:3563”,其他的不用廢話大家也能看得懂。
這里有一個好處,就是不管客戶端用標(biāo)準(zhǔn)Socket TCP的連接方式還是WebSocket的連接方式,服務(wù)端的代碼是一樣的,不需要因?yàn)橥ㄐ欧绞降母淖兌薷拇a,這里當(dāng)然是因?yàn)長eaf給封裝好了,所以客戶端隨便得瑟。
剩下的就是客戶端和服務(wù)器消息的接/發(fā),這里找個最簡單的邏輯,舉個??。
1. 服務(wù)器:
跟一個簡單消息有關(guān)的代碼文件

1.1 msg.go文件中添加一個消息結(jié)構(gòu)
1.2 并在init()方法中注冊這個消息。
1.3 在router.go文件的init()方法中,指定剛才注冊的消息要被哪個模塊接收處理。
注意:模塊間使用的是ChanRPC通訊
最后, 在指定模塊下的handler.go文件進(jìn)行消息邏輯的處理。
1.4 實(shí)現(xiàn)處理函數(shù)
1.5 init中注冊處理函數(shù)
2. 客戶端
這里客戶端用的是Cocos Creator 1.9.1版本, JS腳本開發(fā), websocket連接
不用廢話,直接上代碼,非常好理解。
標(biāo)簽: