go space chat
1.0.0
通過canvas 2d來模擬了3D的視覺效果。
並且在該項目中使用了protobuf來進行前端和後端的通訊協議,這一點非常方便!
WASD按鍵來控制上下左右space空格可以輸入消息,按下回車發送消息最新支持使用docker-compose的方式來啟動服務,克隆項目後,直接執行下面命令
docker-compose up -d
訪問http://localhost:8081
go run main.go
該命令會啟動web-server作為靜態服務,默認80端口,如果需要修改端口,用下面的命令
go run main.go -web_server 8081
項目啟動默認websocket服務端口為9000端口,如果需要修改
go run main.go -socket_server 9001
注意:如果修改websocket端口,同時需要修改js裡面的socket端口
前端Vue+canvas+websocket+protobuf
後端Golang+websocket+protobuf+goroutine
這裡列舉幾個在實現過程中,遇到的很有意思的問題
protoc -I ./ *.proto --go_out=.
protoc --js_out=import_style=commonjs,binary:. *.proto
Canvas 基本用法
Protobuf Guide
Vue.js