您的位置:首页 > Web前端 > Node.js

pomelo rpc调用出错的解决

2016-06-05 18:10 337 查看
adminServer.json 没有设置服务器类型的token

    "type": "game",
    "token": "xxxxxxxxxxxxxx"

出现下面的错误

[2016-06-05 16:34:35.620] [ERROR] console -  Caught exception: TypeError: Cannot read property 'game' of undefined

    at Handler.entry (D:\project\gameBilliards\game-server\app\servers\connector\handler\entryHandler.js:20:17)

    at Service.handle (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\common\service\handlerService.js:38:30)

    at handle (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\server\server.js:370:25)

    at next (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\common\service\filterService.js:50:7)

    at Filter.before (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\filters\handler\timeout.js:34:3)

    at next (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\common\service\filterService.js:58:15)

    at Service.beforeFilter (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\common\service\filterService.js:65:3)

    at beforeFilter (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\server\server.js:242:8)

    at doHandle (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\server\server.js:383:3)
    at dispatch (D:\project\gameBilliards\game-server\node_modules\pomelo\lib\server\server.js:107:7)

rpc调用如果没有传递session,会出现下面的错误

    self.app.rpc.game.gameRemote.add(1,2, "test", 3, function(v1,v2,v3)

 request "connector.entryHandler.entry" timeout.

[2016-06-05 16:38:37.891] [ERROR] pomelo-rpc - [D:\project\gameBilliards\game-server\node_modules\pomelo\node_modules\pomelo-rpc\lib\rpc-server\acceptors\ws-acceptor.js] 

rpc server process message error: "TypeError: undefined is not a function\n    at gameRemote.add 

(D:\\project\\gameBilliards\\game-server\\app\\servers\\game\\remote\\gameRemote.js:14:5)\n    at pro.route 

(D:\\project\\gameBilliards\\game-server\\node_modules\\pomelo\\node_modules\\pomelo-rpc\\lib\\rpc-server\\dispatcher.js:51:10)\n   

 at D:\\project\\gameBilliards\\game-server\\node_modules\\pomelo\\node_modules\\pomelo-rpc\\lib\\rpc-server\\gateway.js:23:16\n

正确的如下

Handler.prototype.entry = function(msg, session, next) {

    var self=this;

    self.app.rpc.game.gameRemote.add(session,1,2, "test", 3, function(v1,v2,v3)

全套creator html5 + nodejs pomelo express 实践开发,喜欢交流的加扣扣群427719099,欢迎入坑
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  pomelo 调试 nodejs bug