目的:如何使用外部socket链接直接访问openfire服务器,直接实现聊天消息发送?
方式:client和openfire服务器之间的connection是怎么建立的?即openfire如何知道一条消息是发自那一个用户,并对消息进行相应的处理和转发?这样的...
方式:client和openfire服务器之间的connection是怎么建立的?即openfire如何知道一条消息是发自那一个用户,并对消息进行相应的处理和转发?这样的connection验证前后对服务器来说有何不同?希望大神指点一下
展开
展开全部
一般来说服务器的公网IP是固定的,注意是公网IP,client的公网IP是变化的(两次联网之间的公网IP不同),client连接服务器的时候直接连接服务器的公网IP,这时只是把通信的道路铺出来了,假设有一个登录的过程,client输入用户名和密码,然后服务器会到数据库中查这个账户,如果查到了,服务器就会把这个账户与client的公网IP绑定起来。
发消息的过程是这样的:client1先输入消息,点击发送后会把消息和收信人的信息打包,发给服务器,服务器根据收信人的信息解析出收信人公网IP地址(绑定的),根据公网IP把消息发给收信人
不过QQ发送消息时,发信人可以通过服务器直接获得收信人的公网IP地址,然后不通过服务器直接把消息发个收信人,这两种模式都可以用
发消息的过程是这样的:client1先输入消息,点击发送后会把消息和收信人的信息打包,发给服务器,服务器根据收信人的信息解析出收信人公网IP地址(绑定的),根据公网IP把消息发给收信人
不过QQ发送消息时,发信人可以通过服务器直接获得收信人的公网IP地址,然后不通过服务器直接把消息发个收信人,这两种模式都可以用
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询