1.3用socketserver创建服务器
socket服务器代码
- # -*- coding: utf-8 -*-
import socketserver,time- myHost = ''
- myPort = 50007
- def now(): #返回一个时间
- return time.ctime(time.time())
- class MyClientHandler(socketserver.BaseRequestHandler):
- def handle(self): #处理每一个连接的用户
- print(self.client_address,now()) #打印该用户地址
- time.sleep(5) #模拟一个运行
- while True: #self.reqeust指的是用户
- data = self.request.recv(1024) # 从客户端接受信息
- if not data: break
- reply = 'Ech0=>%s at %s'%(data,now())
- self.request.send(reply.encode()) #发送信息给客户端
- self.request.close()
- #创建线程,让服务器一直运行下去
- myaddr = (myHost,myPort)
- server = socketserver.ThreadingTCPServer(myaddr,MyClientHandler)
- server.serve_forever()
socket客户端测试代码
- # -*- coding: utf-8 -*-
from socket import *- serverHost = 'localhost'
- serverPort = 50007
- while True:
- messages = [input('输入').encode()] #输入信息,并设置编码, 可设置b''或者str.encode()
- socketobj = socket(AF_INET, SOCK_STREAM) # 创建TCP对象
- socketobj.connect((serverHost, serverPort)) # 连接端口
- for line in messages:
- socketobj.send(line)
- data = socketobj.recv(1024) # 从服务器接受信息
- print('Client received:', data.decode()) #打印信息,解码打印,str.decode()
- socketobj.close()
1.3用socketserver创建服务器的更多相关文章
- java20 创建服务器:ServerSocket
创建服务器:ServerSocket import java.io.BufferedReader; import java.io.IOException; import java.io.InputSt ...
- SQLServer 创建服务器和数据库级别审计
概述 在上一篇文章中已经介绍了审计的概念:本篇文章主要介绍如何创建审计,以及该收集哪些审核规范. 一.常用的审核对象 1.1.服务器审核对象 1.FAILED_LOGIN_GROUP( Audit L ...
- node.js和express创建服务器
创建web服务器 一. 使用node.js创建服务器. 使用express创建http服务. 监控服务器的变化. 二. 初始化配置文件:npm init -y 使用typescript编写,导入nod ...
- SQL Server 创建服务器和数据库级别审计
一.概述 在上一篇文章中已经介绍了审计的概念:本篇文章主要介绍如何创建审计,以及该收集哪些审核规范. 二.常用的审核对象 2.1.服务器审核对象 1.FAILED_LOGIN_GROUP( Audit ...
- Node.js创建服务器和模拟客户端请求
1. 何为服务器 服务器是某种长期运行,等待请求资源的应用程序 2. 常见Web应用架构 3. 如何创建web服务器 Web服务器是使用HTTP协议,等待客户端连接后请求资源的驻守应用程序:HTTP协 ...
- weblogic创建控制台启动脚本以及创建服务器
一.创建控制台脚本 二.创建认证文件 通过上面创建的脚本进行启动的时候,会因为密码问题导致起不来,因为在startWebLogic.sh文件中,没有配置用户名和密码.而且通过上面创建的脚本,启动的时候 ...
- node.js中使用http模块创建服务器和客户端
node.js中的 http 模块提供了创建服务器和客户端的方法,http 全称是超文本传输协议,基于 tcp 之上,属于应用层协议. 一.创建http服务器 const http = require ...
- node.js中net模块创建服务器和客户端(TCP)
node.js中net模块创建服务器和客户端 1.node.js中net模块创建服务器(net.createServer) // 将net模块 引入进来 var net = require(" ...
- node创建服务器
//引入核心模块 const http = require('http'); //创建服务器 http.createServer((req,res)=>{ }).listen(3000); // ...
随机推荐
- [Spring] ClassPathXmlApplicationContext类
1. 该类在package org.springframework.context.support包下. 该包在4.0.1中封装在spring-context-***.jar中. 其无参构造函数的文档 ...
- liunx进程管理之进程介绍
关于进程 process ====================================================================================Wha ...
- InputSream转为String
public static String convertStreamToString(InputStream is) { /* * To convert the InputStream to Stri ...
- 基于VMware模拟实现远程主机网络通信
基于VMware模拟实现远程主机网络通信 目的: 基于VMware软件,模拟实现不同网段的两主机,通过路由器进行通信.两主机host A和host B分别处于VMnet6网络和VMnet7网络,都属于 ...
- climbing stairs leetcode java
问题描述: You are climbing a stair case. It takes n steps to reach to the top. Each time you can either ...
- div成圆形分布
1. css3 ul{ width: 200px; height: 200px; background ...
- Leetcode 1004. 最大连续1的个数 III
1004. 最大连续1的个数 III 显示英文描述 我的提交返回竞赛 用户通过次数97 用户尝试次数143 通过次数102 提交次数299 题目难度Medium 给定一个由若干 0 和 1 组成 ...
- python中RabbitMQ的使用(交换机,广播形式)
简介 如果要让每个接收端都能收到消息,此时需要将消息广播出去,需要使用交换机. 工作原理 消息发送端先将消息发送给交换机,交换机再将消息发送到绑定的消息队列,而后每个接收端都能从各自的消息队列里接收到 ...
- Nginx+Tomcat集群配置
Nginx+Tomcat集群配置 一台虚拟机作为Nginx服务 两太虚拟机配置Tomcat+jdk环境 Nginx测试 启动: cd usr/local/nginx/sbin ./nginx ---& ...
- python assert使用说明
python assert断言的作用 python assert断言是声明其布尔值必须为真的判定,如果发生异常就说明表达示为假. assert断言语句的语法格式 判断a与1.b是否一致,msg类似备注 ...