首页 > 其他 > 详细

Socket 的网络编程

时间:2018-12-28 22:02:39      阅读:160      评论:0      收藏:0      [点我收藏+]

socket 网络编程的服务端:

1) 创建socket 套接字。  

2) 和socket绑定主机地址和端口

3) socket 主动监听端口,看又没有来连接。

4) 当执行到 accept() 时, 被动地等待连接来到。 阻塞。 当连接来到时, 调用, 返回与客户端通信的socket,和客户的addr : ip + 新的通信端口。

5) resv() ,,   send()

 

 

from socket import *
from time import ctime

HOST=127.0.0.1
PORT = 1111
BUFSIZE= 1024
ADDR = (HOST,PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)

while True:
    print waiting for connection...
    tcpCliSock, addr = tcpSerSock.accept()

    print ...connection from:, addr

    while True:
        data = tcpCliSock.recv(BUFSIZE)
        print data
        if not data:
            break
        tcpCliSock.send([%s] %s %(ctime(), data))
        if data == None:
            tcpCliSock.close()

tcpSerSock.close()

 

 

socket 客户端编程:

1) 创建客户端的socket 

 2)   调用 connet( addr ) 连接 服务器addr

 3)  数据的发送和接受。

 

from socket import *
from time import ctime

HOST=127.0.0.1
PORT = 1111
BUFSIZE= 1024
ADDR = (HOST,PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(1)

while True:
    print waiting for connection...
    tcpCliSock, addr = tcpSerSock.accept()

    print ...connection from:, addr

    while True:
        data = tcpCliSock.recv(BUFSIZE)
        print data
        if not data:
            break
        tcpCliSock.send([%s] %s %(ctime(), data))
        if data == None:
            tcpCliSock.close()

tcpSerSock.close()

 

Socket 的网络编程

原文:https://www.cnblogs.com/lijins/p/10192818.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!