帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
131
帖子
2
勋章
3447
Y币

[多端开发] socketManager

[复制链接]
发表于 2024-5-28 13:48:03
可以同时createSocket一个tcp和一个udp广播吗?
我同时打开的时候回调是    "code":201,"msg":"bind failed: EADDRINUSE (Address already in use)"
请问这是什么意思?
你代码是怎么写的,以及后端是怎么配合的,这个返回就是绑定失败,地址已经被使用,应该是你的后端配置问题。
131
帖子
2
勋章
3447
Y币
chyd④④⑤⑤②⑦⑧⑤② · 2024-5-28 14:20你代码是怎么写的,以及后端是怎么配合的,这个返回就是绑定失败,地址已经被使用,应该是你的后端配置问题。

我的wifi网段就是192.168.1,无论什么地址都是这个回调,用主机ip192.168.1.156也是这个回调
var socketManager = api.require('socketManager');
            socketManager.createSocket({
                type: 'udp',
                udpMode: 'broadcast',
                host: '192.168.1.255',
                localPort: '8000',
                charset: 'iso-8859-1',
                returnBase64: false
            }, function (ret, err) {
                if (ret.status) {
                    //连接状态以及接收到数据都通过回调返回输出到接收区div
                    udpSid = ret.sid;
                    udpState = ret.state;
                    console.log(JSON.stringify(ret));
                } else {
                    api.toast({
                        msg: '請重啟App',
                        duration: 2000,
                        location: 'bottom'
                    });
                    console.log(JSON.stringify(ret));
                    console.log(JSON.stringify(err));
                }
            });

我就想打开一个广播,然后设备可以收到我发出的信息
131
帖子
2
勋章
3447
Y币
chyd④④⑤⑤②⑦⑧⑤② · 2024-5-28 14:20你代码是怎么写的,以及后端是怎么配合的,这个返回就是绑定失败,地址已经被使用,应该是你的后端配置问题。

我这边测试就是直接开打udp是可以的,但是如果打开tcp后再开udp就是这个错误回调,是不可以一起开的吧?如果想要一起开要怎么办
0
帖子
2
勋章
1646
Y币
一个socket不可以同时建立一个TCP连接和UDP连接。这是因为TCP和UDP是两种不同的网络协议,它们在传输层有着本质的不同。TCP是一种面向连接的协议,它提供的是一种可靠的、面向连接的服务,而UDP则是一种无连接的协议,它提供的是一种不可靠的、尽最大努力交付的服务。

在网络编程中,一个socket实例只能绑定一种协议,要么是TCP,要么是UDP。当一个socket绑定了TCP协议后,它就处于监听状态,等待TCP三次握手建立连接的过程,一旦连接建立成功,就可以进行数据的传输。而如果一个socket绑定了UDP协议,它可以发送和接收无连接的数据报文,不需要像TCP那样建立连接。
131
帖子
2
勋章
3447
Y币
至高吾·尚 · 2024-5-28 16:15一个socket不可以同时建立一个TCP连接和UDP连接。这是因为TCP和UDP是两种不同的网络协议,它们在传输层有着本质的不同。TCP是一种面向连接的协议,它提供的是一种可靠的、面向连接的服务,而UDP则是一种无连接的协议 ...

那可以创建多个socket吗?
0
帖子
2
勋章
1646
Y币
TuT..... · 2024-5-28 16:26那可以创建多个socket吗?

可以
131
帖子
2
勋章
3447
Y币

怎么创建呢?模块只有打开tcp和udp的函数   就是createSocket
TuT..... · 2024-5-28 17:01怎么创建呢?模块只有打开tcp和udp的函数   就是createSocket

多部署一个服务,换个端口就可以了吧,这个是后端的事情吧。
131
帖子
2
勋章
3447
Y币
chyd④④⑤⑤②⑦⑧⑤② · 2024-5-28 17:03多部署一个服务,换个端口就可以了吧,这个是后端的事情吧。

我这边都是前端打开tcp和udp对不同设备进行通信的,两个的端口和ip都是不一样的
12下一页
您需要登录后才可以回帖 登录

本版积分规则