Python 使用 Unix 套接字和 UDP 建立的服务端是不是没法回发数据给客户端啊?

2016-08-03 16:54:37 +08:00
 coolair
server = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
data, addr = server.recvfrom(1024)

这样获取的地址是空的,没法使用 sendto 发数据出去。
1862 次点击
所在节点    问与答
19 条回复
tinyproxy
2016-08-03 21:18:17 +08:00
第一个参数查文档
coolair
2016-08-03 21:35:19 +08:00
@tinyproxy 你这不是废话么?我没查文档来这问?你不会就不要回答!
upczww
2016-08-03 21:47:18 +08:00
楼主有话好好说
coolair
2016-08-03 22:10:15 +08:00
@upczww 最讨厌看到这种"去查文档"、"去 google"这类的回答了。
zjb861107
2016-08-03 22:24:11 +08:00
支持 1 楼
upczww
2016-08-03 22:33:30 +08:00
@coolair 楼主发帖是问别人问题的,如果别人的回答对你没有帮助,忽视之即可,但是不要喷人家,因为每个人的水平不一样,可能他觉得一看文档就看懂了呢?
kkzxak47
2016-08-03 22:37:23 +08:00
A Unix domain socket or IPC socket(inter-process communication socket) is a data communications endpoint for exchanging data between processes executing on the same host operating system.

the same host...same host... host...
一楼的提示异常准确
matthewgao
2016-08-03 22:38:46 +08:00
@coolair 问问题么,就要虚心点,文档是要看的,但是基础知识也要看, UNIX socket 哪来的地址啊, UNIX socket 是 bind 到一个文件的
ahcat
2016-08-03 22:47:49 +08:00
一楼点到即止,给了楼主自我学习的空间。楼主还骂人。
coolair
2016-08-03 22:55:46 +08:00
@matthewgao
@kkzxak47
@upczww 真心不知道哪错了。我看过文档了,也知道没地址,程序也测过了,我只是想问下是不是这种方式没办法回传数据,因为我认为是这样的。初学,网上看到的方式要么是 unix socket 和 tcp ,要么是 af_inet 和 udp ,至少地址和连接要一个,这样没有连接也没地址,我认为是不可以回传的。我只是想求证自己的想法而已,当然是看过文档,做过实验才来问的。
choury
2016-08-03 23:09:21 +08:00
建议你看 man 7 unix
sudo987
2016-08-03 23:13:59 +08:00
支持一楼。
matthewgao
2016-08-04 00:19:35 +08:00
@coolair Unix socket 当然可以回传,但是你要 bind 到同一个 unix socket 对应的文件上, UDP 没法回传,除非你 client 端也监听接受 server 端发来的 UDP 包

可以 man 7 unix ,或者 http://man7.org/linux/man-pages/man7/unix.7.html 了解更多 unixsocket 的东西
DoctorCat
2016-08-04 01:43:30 +08:00
lz 戾气太重,题外话,建议阅读经典《提问的艺术》 http://www.oschina.net/question/124879_45870
jarlyyn
2016-08-04 08:22:57 +08:00
不喜欢一楼这种回答的话楼主应该花钱请私教
abctest
2016-08-04 08:47:40 +08:00
100 块,我教你。
tinyproxy
2016-08-04 09:24:01 +08:00
@coolair 我告诉你哪个参数错了,再说我用手机回,还要我帮你查文档么
coolair
2016-08-04 09:30:41 +08:00
@tinyproxy 哪个参数错了?我问的是这种方式是不是不能回传数据给 client ,参数怎么错了?
tinyproxy
2016-08-04 09:40:10 +08:00
@coolair 中间回复没注意到,我以为你就想收数据。上面好多人说了 unix socket ,我也不说啥了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/296879

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX