【Python】常用模块:xmlrpc
1、xmlrpc是什么xmlrpc 是一套基于 HTTPXML 格式的轻量级远程过程调用协议客户端调用本地函数的写法实际去调用另一台服务器上的函数数据全部用 XML 封装传输可以实现跨语言通信2、客户端和服务端Python 内置模块包含客户端和服务端xmlrpc.client 客户端例如ServerProxyxmlrpc.server 服务端例如SimpleXMLRPCServer2.1 服务端示例以 SimpleXMLRPCServer 为例运行本地 TCP HTTP 服务注册普通函数、实例方法供客户端远程调用fromxmlrpc.serverimportSimpleXMLRPCServerdefadd(a,b):returnabif__name____main__:serverSimpleXMLRPCServer((0.0.0.0,8080),allow_noneTrue)server.register_function(add,add)server.serve_forever()其它内置服务DocXMLRPCServer继承 SimpleXMLRPCServer 额外自带自动文档页面浏览器访问端口可以直接查看所有可调用接口、参数说明调试非常方便MultiPathXMLRPCServer支持多路径2.2 客户端示例以 ServerProxy 为例连接远程服务器调用远程服务器中注册的方法fromxmlrpc.clientimportServerProxy proxyServerProxy(http://127.0.0.1:8080,allow_noneTrue)resproxy.add(10,20)print(1020 ,res)3、自定义传输层3.1 介绍客户端 ServerProxy 默认使用Python内置的传输层 Transport默认 Transport 功能有限无法自定义超时、请求头、HTTPS、日志、重试逻辑自定义 Transport 可以实现哪些功能设置请求超时添加自定义 HTTP Header请求前后加日志、异常重试适配 HTTPS走网络代理访问外网 RPC 服务3.2 示例自定义传输层 LaoerTransport 需要先继承 Transport一般重新实现make_connectionfromxmlrpc.clientimportTransport,ServerProxyimporthttp.clientclassLaoerTransport(Transport):def__init__(self,timeout3):super().__init__()self.timeouttimeoutdefmake_connection(self,host):connhttp.client.HTTPConnection(host,timeoutself.timeout)returnconnif__name____main__:transLaoerTransport(timeout2)proxyServerProxy(http://127.0.0.1:8080,transporttrans,allow_noneTrue)print(proxy.add(5,6))3.3 https传输如果连接https安全服务器可以使用Python内置的SafeTransportfromxmlrpc.clientimportSafeTransport proxyServerProxy(https://xxx:port,transportSafeTransport())3.4 Fault 异常处理服务端内部出错抛出异常时客户端可以捕获该异常获取错误码和错误信息try:proxy.test()exceptFaultase:print(e.faultCode,e.faultString)3.5 Binary 二进制传输传输二进制数据比如图片、视频流、文件等需要使用 Binary 包装一层fromxmlrpc.clientimportBinary datab123456proxy.send_file(Binary(data))

相关新闻

FairyGUI深度解析:Unity复杂UI开发的高效解决方案与性能优化

FairyGUI深度解析:Unity复杂UI开发的高效解决方案与性能优化

1. 项目概述:为什么是Fairy GUI? 如果你在Unity项目里做过UI,尤其是那种界面复杂、动效繁多、需要频繁迭代的项目,你大概率经历过UGUI或NGUI带来的“甜蜜的烦恼”。UGUI的组件化思路清晰,但面对大量动态生成、复杂嵌套…

2026/7/27 7:33:22阅读更多 →
3步降低40%内存占用:SillyTavern性能优化实战指南

3步降低40%内存占用:SillyTavern性能优化实战指南

3步降低40%内存占用:SillyTavern性能优化实战指南 【免费下载链接】SillyTavern LLM Frontend for Power Users. 项目地址: https://gitcode.com/GitHub_Trending/si/SillyTavern 你是否曾在本地部署SillyTavern时遭遇内存飙升、响应缓慢的困扰?作…

2026/7/27 7:31:22阅读更多 →
微信防撤回补丁失效?逆向工程实战:从内存修改到开源方案

微信防撤回补丁失效?逆向工程实战:从内存修改到开源方案

1. 项目概述:当微信更新遇上防撤回补丁最近,不少热衷于使用微信PC版防撤回功能的朋友,可能都遇到了一个头疼的问题:微信更新到4.0.3.36版本后,之前用得好好的补丁突然失效了。消息撤回的提示框一闪而过,该被…

2026/7/27 7:31:22阅读更多 →
杰理之蓝牙通话声音卡顿严重【篇】

杰理之蓝牙通话声音卡顿严重【篇】

原因:之前的逻辑是由蓝牙数据驱动解码,蓝牙来数据就驱动解码一次,这样需要解码一次的数据被消耗完不能有模块处理不完

2026/7/27 8:57:28阅读更多 →
杰理DAC配成单声道输出少了一路声道【篇]

杰理DAC配成单声道输出少了一路声道【篇]

原因:打开人声消除,DAC配成单声道输出会少了一路声道输出。

2026/7/27 8:57:28阅读更多 →
人工智能核心技术突破与行业应用实践

人工智能核心技术突破与行业应用实践

1. 人工智能技术发展现状与核心突破近年来人工智能领域的发展呈现出指数级增长态势,其核心突破主要体现在算法创新、算力提升和数据积累三个维度。从技术架构来看,现代AI系统主要依赖深度神经网络,这种受生物神经元启发的计算模型通过多层非线…

2026/7/27 8:57:28阅读更多 →
自然常数 e 与欧拉恒等式

自然常数 e 与欧拉恒等式

一、导数1.1 状态量状态量是用来描述某个现象当前状态的量,往往是一种物理量、经济量或工程量。例如,竹子的高度、汽车的位置、电容两端的电压、银行账户中的金额,都可以看作状态量。现象状态量状态量的一个取值竹子生长的高度高度竹子 1 天生…

2026/7/27 8:57:28阅读更多 →
Ubuntu下libevent安装指南与常见问题解决

Ubuntu下libevent安装指南与常见问题解决

1. 项目概述与背景 libevent是一个轻量级的开源高性能网络库,广泛应用于事件驱动的网络编程中。它封装了操作系统底层的I/O复用机制(如epoll、kqueue等),为开发者提供了统一的编程接口。在Linux-Ubuntu环境下安装libevent看似简单…

2026/7/27 8:55:28阅读更多 →
覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

🔹 工具基础介绍 OpenClaw 是开源生态中一款实用性较强的本地智能工具,凭借本地离线运行、可视化图形操作和任务自动化三大核心特性,赢得了众多用户的青睐。与普通在线对话AI工具不同,它属于能够直接操控本机软硬件的智能数字员工…

2026/7/27 1:14:34阅读更多 →
伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

所谓液压伺服阀体的精密激光焊接,是用激光束对阀座壳体(通常为不锈钢或铝合金)进行密封焊接,使阀体在21-35MPa的高压液压油或压缩气体中长期运行而不发生介质泄漏。液压伺服阀是高端液压系统的"大脑"。从航空航天飞行控…

2026/7/27 1:14:52阅读更多 →
D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还在…

2026/7/27 1:14:56阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:24阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:24阅读更多 →
2007-2023年各市区县生态文明建设示范区DID

2007-2023年各市区县生态文明建设示范区DID

数据简介 自改革开放以来,我国依赖高投入、高资源消耗和高污染等传统发展模式实现了经济短期内的快速增长, 然而这也导致了严重的生态环境危机。因此,国家有力于推动企业高质量经济发展,协同生态保护的方针,从而从201…

2026/7/27 0:00:24阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/25 23:03:25阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/26 19:05:21阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/26 19:05:21阅读更多 →