skynet測試程序編寫

看了skynet lua部分代碼之後,嘗試寫一個client簡單協議交互

1、定協議:

proto.lua:
.package {
      type 0 : integer
      session 1 : integer
}

.... --增加簡單的登錄協議

login 5 {
          request {
              accounts 0 : string
              pwd 1 : string
              clientip 2 : string
              machinesearial 3 : string
              nickname 4 : string
              type 5 : integer
          }
          reponse {
               userid 0 : integer
               errmsg 1 : string
          }
}

2、修改client.lua增加如下代碼:

send_request("login", { accounts = "guest", pwd = "123456", clientip = "127.0.0.1", machinesearial = "ANCDJ153", nickname = "快手", type = 3})

3、修改anget.lua增加調用SIMPLEDB模塊:

function REQUEST:login()
	-- body
	local r = skynet.call("SIMPLEDB", "lua", "login", self.accounts, self.pwd, self.clientip, self.machinesearial,
self.nickname, self.type);
	print('login return', r)
	if r then
		for k, v in pairs(r) do
			print(k, v);
		end
	end
	--return r;
	return r;
end

3、simpledb.lua處理angent.lua的調用,代碼如下:

function command.LOGIN( ... )
	print('LOGIN enter in', ...);

	return {userid = 11, errmsg = 'success'};
end

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章