2018/02/05随笔
2018-02-05 本文已影响0人
RegulusFun
今天需要和客户端进行联调,有几个点需要我注意一下
1.我个人的机器上,服务端代码是在VMware虚拟机上的,虚拟网络用的是NAT,所以我得先将虚拟机的端口映射到物理机中,客户端才可以访问
2.今天调试的时候,明明在登录服务器那里看到客户端登录了,却发现很快的下线了,与客户端同事沟通了一下,说是被踢的。后来找了找原因,有个地方没注意到,具体就是
首先客户端会请求登录服务器,登录服务器经过一番验证后,会把配置好的游服的ip和端口返回去,然后客户端拿着这个去连游服。
今天出错是因为我之前的配置文件中,游服地址是127.0.0.1。在自己本地的模拟客户端中测试没问题,但是一旦通过其他人的电脑进行调试,在客户端登录login服务器后,登录服返回给客户端的游服ip即127.0.0.1后,双方断开连接。随后客户端就会去请求127.0.0.1(本地)的端口,而不会去连游服。游服那边因为收到登录服的通知了,已经预登陆客户端了,但是客户端又没有真的连过来,在一定时间后,游服这边因为客户端没有连接过来,就会把预登陆的信息给清除,随后通知登录服清除状态。
所以今天我这边才会一直看到玩家登陆,但是在数据库中却怎么都找不到客户端初次登陆游服的初始化数据,而且过不了多久就看到他被踢下线。
后来在配置文件里把要发送的ip和端口改了一下,客户端就可以正常登陆了。