socket tcp数据中转

socket tcp数据中转,第1张

socket.BeginAccept(delegate (result) { Socket socket = (Socket)result.AsyncState},socket)接着在回调内部调用socket的EndAccept就可以获取端口了,,

简单描述: 服务器端是等待别人连接的一端.. 客户端是主动连接的一端

两个QQ的例子:

1.两个QQ都是客户端

2.两个QQ都连接到腾讯的QQ服务器上.

3.两个QQ之间聊天..首先QQ1 将消息发到QQ服务器上...再由QQ服务器将消息发送到QQ2上

腾讯可以限制聊天内容:

.在QQ1发到QQ服务器上时就进行过滤..如果聊天内容不符合要求..就不给你转发到QQ2上..

程序源代码:

调用connect的是客户端..

有两种方案:

1、在PC机上建立服务器,手机与手机之间的通信通过服务器进行中转

2、一部手机作为服务器,另一部手机作为客户端接入该手机

一般是第一种方案

示例代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1、pc端:

serverSocket=new ServerSocket(5648) //在5648端口进行侦听

Socket sk = serverSocket.accept()//如果有接入,则创建对应的socket

2、手机端:

socket=new Socket("tobacco5648.xicp.net",5648)//连接socket

3、消息输入输出:

pw=new PrintWriter(socket.getOutputStream()) //消息输出

pw.println("发送消息")

pw.flush()

br=new BufferedReader(new InputStreamReader(socket.getInputStream())) //消息接收

while((str=br.readLine())!=null){

//接收消息

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/302031.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存