socket简介

socket介绍:socket是python用来完成通信的一个模块,他提供了底层的套接字访问接口

   使用方法:

         1.创建socket套接字对象:

               如:s = socket.socket(socket.IF_INET,socket.SOCK_STREAM)  表示以IPv4协议创建了一个流式的套接字对象 也是默认的一个创建方式

               标准语法:s = socket.socket(family,type )

                      

                      family指明协议家族

                             socket.AF_UNIX(unix域,用于同一台机器上进程间通讯)

                             socket.AF_INET(IPv4)

                      type 指明数据流格式

                            socket.SOCK_STREAM(流套接字)

                            socket.SOCK_DGRAM(数据报文套接字)

                            socket.SOCK_RAW(raw套接字)

        服务端
         2.绑定地址(url)

                    s.bind((host,port))   

         3.监听

                  s.listen(num)  #num指最大连接数,所有的链接保存在一个队列中,以FIFO的顺序执行。其实无论这里设置多少,下一个连接也只能在上一个退出之后才能进入

         4.连接

                 address = sock.accept()

                 sock调用accept()时,系统进入waiting状态,等待连接。有连接时,返回一个元组,元组中包含connection(连接套接字),address(连接地址)        

                 

 

                段代码的意思是开启一个socket服务,客户端发送过来消息后。经过服务端的处理后。再返回给客户端,然后断开连接。

 

        客户端 

         2.连接

                    s.connect((host,port))

           3.收发数据

                    s.send()  #返回值为已发送数据个数

                    s.recv(maxn)#必须加上,每次接受的最大数据量,进入block状态,函数返回值为从服务器收到的数据字符串。

                    如果想要发送如数组,字典这种数据结构,这可考虑使用json格式来进行数据转换发送

                    

posted @ 2019-04-16 17:07  昵称为空  阅读(410)  评论(0编辑  收藏  举报