发送数据到UdpSocket时出现“无法分配请求的地址”错误

5
let addr = "239.255.255.250:1982";
let socket = UdpSocket::bind(addr).unwrap();
let message = "some message".as_bytes();
socket.send_to(message, addr).unwrap();

这段代码在最后一行出现了以下错误:

Error { repr: Os { code: 49, message: "Can\'t assign requested address" } }

为什么会这样呢?

编辑: 我按照建议尝试了以下方法:

let addr = "239.255.255.250:1982";
let socket = UdpSocket::bind("127.0.0.1:34254").unwrap();
let message = "some message".as_bytes();
socket.send_to(message, addr).unwrap();

不幸的是,那并没有改变任何事情。

2个回答


0
这个答案的启发,我将地址更改为“0.0.0.0:34254”,然后它就可以工作了:
let addr = "239.255.255.250:1982";
let socket = UdpSocket::bind("0.0.0.0:34254").unwrap();
let message = "some message".as_bytes();
socket.send_to(message, addr).unwrap();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接