2019-05-07socket

客户端

from socket import *

import socket

'''
进行通信的两端就是套接字,有两种类型,
分别是服务器的套接字和客户端的套接字。
'''

1、创建套接字对象:

'''
family -- 设置ip协议类型,默认AF_INET(ipv4) , AF_INET6(ipv6)

type -- 设置传输协议类型,SOCK_STREAM(TCP),SOCK_DGRAM(UDP)
'''
server = socket(family=AF_INET, type=SOCK_STREAM)

2、绑定ip地址和端口

'''
bind(ip地址,端口)

ip地址 -- 字符串,服务器对应的ip地址

端口号 -- int,端口用来区分电脑上不同的服务。
0-65535,0-1024是著名端口,一般不选。
同一时间一个端口只能绑定一个服务。
'''
addr = ('10.7.185.99', 7775)
server.bind(addr)

3、开始监听请求(按电池,等别人打电话)

server.listen()

4、让服务器一直运行

while True:
print('========')
# 5、接收请求(接电话)
# 代码运行到这个位置,会停下来,等到有客户端给服务器发送请求为止。
connect, addr = server.accept()
print('连接成功')

# 6、接收消息(听别人说)
'''
recv(bufsize)    -- bufsize,设置一次性能够接收的数据大小的最大值。单位值字节。
                    返回的数据类型是字节
'''
re_data = (connect.recv(1024)).decode(encoding='utf-8')
print(re_data)

# 7、发送数据(说给别人说)
message = input('enter ur code')
connect.send(message.encode())

# 8、关闭连接(挂电话)
# connect.close()


# while True:
#     re_data = (connect.recv(1024)).decode(encoding='utf-8')
#     print(re_data)
#
#     # 7、发送数据(说给别人说)
#     message = input('enter ur code')
#     connect.send(message.encode())

    # 8、关闭连接(挂电话)
    # connect.close()

客户端

import socket

from socket import *

1、创建套接字对象

client = socket()

2、连接服务器

client.connect(('10.7.185.99', 7775))

while True:
# 3、发送消息
message = input('enter ur message')
client.send(message.encode())

# 4、接收消息
re_data = client.recv(1024)
print(re_data.decode(encoding='utf-8'))

你可能感兴趣的:(2019-05-07socket)