码迷,mamicode.com
首页 > 其他好文 > 详细

socket

时间:2018-09-03 16:28:00      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:就是   hid   模块   print   soc   play   数据   通过   closed   

socket

socket通常称为‘套接字‘,用于描述ip地址和端口,是一个通信链的句柄,应用程序通常通过‘套接字‘向网络发出请求或者应答网络请求.

socket起源于Unix,Unix/Linux基本哲学之一就是‘一切皆文件‘,对于文件用[打开][读写][关闭]模式来操作.socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO,打开,关闭)

socket和file的区别:

  file模块是针对某个指定文件进行[打开][读写][关闭]

  socket模块是针对服务器端和客户端进行[打开][读写][关闭]

客户端: cs架构, client -> server

浏览器:bs架构, browser-> server

基于socket模块实现网络通信

  python2 ,send/recv 发送的都是字符串

  python3 ,send/recv 发送的都是字节(需要将发送的信息转换为字节)

阻塞:

  服务端:

    accept, 阻塞:等待客户端来连接

    recv,     阻塞:等待客户端发送数据

  客户端:

    connect, 阻塞:一直连接,直到连接成功才往下运行其他代码

    recv,       阻塞:等待服务端发送数据

技术分享图片
import socket
server = socket.socket()
server.bind((192.168.13.188, 9001))
server.listen(5)
conn,addr = server.accept()
response = conn.recv(1024)
print(response)
conn.send(bThis is server)
conn.close()
服务端
技术分享图片
import socket
client = socket.socket()
client.connect((192.168.13.188, 9001))
client.send(bThis is client.)
response = client.recv(1024)
print(response)
client.close()
客户端

 

socket

标签:就是   hid   模块   print   soc   play   数据   通过   closed   

原文地址:https://www.cnblogs.com/Virous1887/p/9578921.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!