请问QQ服务器向下传送消息是怎样实现的?(100分)

  • 主题发起人 主题发起人 佐罗
  • 开始时间 开始时间

佐罗

Unregistered / Unconfirmed
GUEST, unregistred user!
我正在做一个C/S型的程序,很想知道服务器怎样向客户端发送信息,以及客户端怎样接受(类似QQ)。
主要是客户端在另外的网段,怎样突破网关,获得客户端的IP?
 
应该是客户端向服务器发送信息
让服务器知道客户端的情况
我正在做这个
 
我也在写。我想实现的是:一个客户端向服务器提交信息,怎样让另一个或几个特定客户端立即获得此信息呢?
 
QQ用的UDP啊, 现在最新的1230可以用TCP
 
我也正在写这方面的程序,
 
如果客户端为内网IP,server 知道了又有什么用?

其实比较方便的方法是,客户端每隔几妙就主动连接 server ,看看有没有消息要发
 
XMjli 我是这样作的,但如果读不到数据时,客户端就关不掉,能不能帮一下忙.
 
我来说一下吧,是自己总结的,可能有错。
通常的HTTP 代理 支持 GET, POST, connect 等几个命令。

GET 是最基本的 命令,IE 向服务器发送叶面请求就是用
GET 命令
如: GET HTTP://www.xmjli.com/index.htm HTTP/1.1

connect 命令将允许客户端与服务器建立连接,此时客户端与服务器可以双向传送数据,代理不管。
GET 命令则不行(自己试下来不行)
只能由服务器端向客户端单向发送数据。

OICQ 的 HTTP 代理(非会员的)就是用connect 命令与tencent 的服务器建立连接,然后双向传送数据。

由于 connect 命令的 双向通讯方式不够安全,HTTP代理或放火墙可能会过滤掉这个命令,不支持他,所以通用性不好。

 
to sandalwood:
delphi 很久没用了,不是很清楚.可以搞个超时什么的。
 
后退
顶部