怎样在同一系统中既做服务器又作客户端?谢谢!

powerzl 2002-11-13 12:26:59
怎样来设计这个系统呢?我的条件是先通过客户端发起对另一个服务器的请求,然后用自己的服务器,实时监听接收数据。
...全文
172 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
powerzl 2002-11-18
  • 打赏
  • 举报
回复
我还是有点不懂,请求指教,能说的具体点吗?
“listen 时指定端口,connect 时会用另一个端口的“ connect怎样获得端口呢,它的函数参数中有一个就是端口号,不给赋值,就报错。
powerzl 2002-11-18
  • 打赏
  • 举报
回复
收到,谢谢指点,马上给分!
HuWenjin 2002-11-18
  • 打赏
  • 举报
回复

你想错了, connect 中指出的端的口是要连接到对方机器的端口,不是本机使用的,也就是说: 例如  IE  你开了很多连到同一个服务器,则你要指出对方机器的 80 端口,本地的端口就不会是 多个 IE 使用同一个了


这样吧看下图

客户机    使用端口  服务器            使用端口
       listen 80 在 80端口监听  80

connect 80 ???
connect 80 ???
connect 80 ???
connect 80 ???


现在清楚一点了吗?


只有服务器上监听时是占用了 80 端口,客户端连接到80端口,它自己并不一定也是使用 80 端口,可能是别的端口
aben456 2002-11-15
  • 打赏
  • 举报
回复
Saimen(干!) 说的对
你就按照一个端口来对待就是了
这样移植后也不用改
HuWenjin 2002-11-15
  • 打赏
  • 举报
回复

listen 时指定端口,
connect 时会用另一个端口的,不用你管了


按我说的做吧,没问题 的
newKoala 2002-11-14
  • 打赏
  • 举报
回复
IP+PORT must be unique
more than one application use one set of IP+PORT will lead to error.
powerzl 2002-11-14
  • 打赏
  • 举报
回复
我是在用两个端口调试,可是正是运行后也要处理这个问题呀(只用一个端口实现)。
superhard 2002-11-13
  • 打赏
  • 举报
回复
看你的情况是调试,为什么不用两个端口?正式运行时再把端口改回来
HuWenjin 2002-11-13
  • 打赏
  • 举报
回复
这样撒:

准备好了,在指定的端口启动 listen

启动成功 --》 使用 connect 到对方,发送来连我吧消息,确认收到就退出

同一个 SOCKET 这样做就不好了!如果消息发过去,对方来连,可是这边还设有启动 SOCKET 怎办?
powerzl 2002-11-13
  • 打赏
  • 举报
回复
可是只用一端口怎么实现呀?我connect到对方,然后关闭。在run起listen,
这样我开始的connect就没有意义了。同一个socket不能在connect,listen中循环使用吗?
门吹西风 2002-11-13
  • 打赏
  • 举报
回复
你的问题能不能说的具体点?
aneflyer@163.com
HuWenjin 2002-11-13
  • 打赏
  • 举报
回复
在你的程序里
加一个 connect 连到对方,发一个我准备好了,放马过来,就关了自己 当然,这时也要做好一个 listen 在指定的端口等好,要不别人放马过来就....
qrlvls 2002-11-13
  • 打赏
  • 举报
回复
127.0.0.1是环回地址,你的程序向127.0.0.1发起连接请求,在你本机的服务器端程序是可以监听的
my9471 2002-11-13
  • 打赏
  • 举报
回复
看用什么协议,udp的话用很简单,tcp的话就要创建不同的Socket,listen,client,server不同的socket

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧