网络编程之TCP客户端程序开发
网络编程之TCP客户端程序开发
- 1. 开发 TCP 客户端程序开发步骤
- 2. socket 类的介绍
- 3. TCP 客户端程序开发示例代码
- 4. 小结
1. 开发 TCP 客户端程序开发步骤
- 创建客户端套接字对象
- 和服务端套接字建立连接
- 发送数据
- 接收数据
- 关闭客户端套接字
2. socket 类的介绍
导入 socket 模块 import socket
创建客户端 socket 对象 socket.socket(AddressFamily, Type)
参数说明:
- AddressFamily 表示IP地址类型, 分为TPv4和IPv6
- Type 表示传输协议类型
方法说明:
- connect((host, port)) 表示和服务端套接字建立连接, host是服务器ip地址,port是应用程序的端口号
- send(data) 表示发送数据,data是二进制数据
- recv(buffersize) 表示接收数据, buffersize是每次接收数据的长度
3. TCP 客户端程序开发示例代码
import socketif __name__ == '__main__':# 创建tcp客户端套接字# 1. AF_INET:表示ipv4# 2. SOCK_STREAM: tcp传输协议tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 和服务端应用程序建立连接tcp_client_socket.connect(("192.168.131.62", 8080))# 代码执行到此,说明连接建立成功# 准备发送的数据send_data = "你好服务端,我是客户端小黑!".encode("gbk")# 发送数据tcp_client_socket.send(send_data)# 接收数据, 这次接收的数据最大字节数是1024recv_data = tcp_client_socket.recv(1024)# 返回的直接是服务端程序发送的二进制数据print(recv_data)# 对数据进行解码recv_content = recv_data.decode("gbk")print("接收服务端的数据为:", recv_content)# 关闭套接字tcp_client_socket.close()
执行结果:
b'hello'
接收服务端的数据为: hello
说明
str.encode(编码格式) 表示把字符串编码成为二进制
data.decode(编码格式) 表示把二进制解码成为字符串
网络调试助手充当服务端程序:
4. 小结
- 导入socket模块
- 创建TCP套接字‘socket’
- 参数1: ‘AF_INET’, 表示IPv4地址类型
- 参数2: ‘SOCK_STREAM’, 表示TCP传输协议类型
- 发送数据‘send’
- 参数1: 要发送的二进制数据, 注意: 字符串需要使用encode()方法进行编码
- 接收数据‘recv’
- 参数1: 表示每次接收数据的大小,单位是字节
- 关闭套接字‘socket’表示通信完成
网络编程之TCP客户端程序开发相关推荐
- Centos网络编程之tcp十一种状态及问题处理办法
尊重原创版权: https://www.noveljp.com/hot/43730.html 更多内容参考: https://www.noveljp.com/ Linux网络编程之tcp十一种状态及问 ...
- Java网络编程之TCP、UDP
Java网络编程之TCP.UDP 2014-11-25 15:23 513人阅读 评论(0) 收藏 举报 分类: java基础及多线程(28) 版权声明:本文为博主原创文章,未经博主允许不得转载. J ...
- java网络编程之TCP通讯
java中的网络编程之TCP协议的详细介绍,以及如何使用,同时我在下面举2例说明如何搭配IO流进行操作, 1 /* 2 *TCP 3 *建立连接,形成传输数据的通道: 4 *在连接中进行大数据量传输: ...
- Python中的网络编程之TCP
Python中的网络编程之TCP 文章目录 Python中的网络编程之TCP 1.TCP介绍 2.TCP特点 3.TCP与UDP的不同点 4.tcp通信模型 5.tcp客户端 6.tcp服务器 7.T ...
- TCP 客户端程序开发
TCP 客户端程序开发 1. 开发 TCP 客户端程序开发步骤回顾 创建客户端套接字对象 和服务端套接字建立连接 发送数据 接收数据 关闭客户端套接字 2. socket 类的介绍 导入 socket ...
- java 网络编程简单聊天_网络编程之 TCP 实现简单聊天
网络编程之 TCP 实现简单聊天 客户端 1.连接服务器 Socket 2.发送消息 package lesson02;import java.io.IOException;import java.i ...
- 【网络编程】TCP 网络应用程序开发
[网络编程]TCP 网络应用程序开发 TCP 网络应用程序开发流程 1. TCP 网络应用程序开发流程的介绍 2. TCP 客户端程序开发流程的介绍 3. TCP 服务端程序开发流程的介绍 4. 小结 ...
- TCP 客户端程序开发步骤
TCP 客户端程序开发 1. 开发 TCP 客户端程序开发步骤回顾 创建客户端套接字对象 和服务端套接字建立连接 发送数据 接收数据 关闭客户端套接字 2. socket 类的介绍 导入 socket ...
- 网络编程之TCP协议与UDP对比
网络编程之TCP协议与UDP对比 UDP协议: 1,面向无连接. 2,不可靠协议,容易丢包. 3,速度快. 4,包体积有限制,64k以内. 通常,聊天,在线视频,凌波. TCP协议: 1.面向连接. ...
最新文章
- mongodb关联查询 和spring data mongodb
- python逗号bug
- python中tolist_高效的张量操作 Pytorch中就占5种
- 在centos 6.3下安装php 5.3.3 xdebug的方法与步骤
- X-Frame-Options防止自己的网页放被在别人iframe中
- mybatis 之动态SQL
- 纯C++代码实现将像素矩阵保存为bmp图片
- POJ3617 Best Cow Line【水题】
- WebView的详细讲解
- pfSense book Html版下载!
- 计算机课题名称怎么取,课题名称:微型计算机操作入门
- SSD固态硬盘知识简介
- 史上最全的自动驾驶研究报告(上)
- Ettercap网络嗅探工具攻略
- 基于STM32F103C8T6的74HC595驱动8位数码管模块学习
- git切换远程分支为develop
- 【博客园-问题反馈】使用谷歌浏览器 百度图床图片无法显示
- com.zxy.android tiny,遇到一个 SIGABRT 这样的错误
- iOS ”打仙人掌“游戏一---游戏玩法实现
- statusBar控件
热门文章
- 如何对jmeter设置IP欺骗
- solodity实现erc721 宠物
- Binder对象死亡通知机制
- 雷电模拟器装Xposed
- JavaScript中正负零
- 关于微型计算机原理的文献,关于微型计算机原理论文范文资料 与微型计算机原理和接口技术实验教学体系改革有关论文参考文献...
- Android智能聊天机器人的实现
- ardl模型stata命令_18种Eviews方程参数估计方法汇总​
- 为什么有s[0]-‘0‘,是什么意思?
- 2014年国外公布的中国内地大学排名18强名单