Pyhton编程:xmlrpc远程文件读取工具

举报
彭世瑜 发表于 2021/08/14 01:10:29 2021/08/14
【摘要】 以下使用的是py3代码,py2可能引用方式不一样 服务器端 server.py # -*- coding: utf-8 -*- from xmlrpc.server import SimpleXMLRPCServer def file_read(filename): with open(filename, "r") as f: return f.read()...

以下使用的是py3代码,py2可能引用方式不一样

服务器端

server.py

# -*- coding: utf-8 -*-

from xmlrpc.server import SimpleXMLRPCServer


def file_read(filename): with open(filename, "r") as f: return f.read()


server = SimpleXMLRPCServer(("localhost", 8000))  # 实例化服务
server.register_function(file_read)  # 注册函数
server.serve_forever()  # 启动服务

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

要读取的文件
demo.txt

关雎
先秦:佚名

关关雎鸠,在河之洲。窈窕淑女,君子好逑。
参差荇菜,左右流之。窈窕淑女,寤寐求之。
求之不得,寤寐思服。悠哉悠哉,辗转反侧。
参差荇菜,左右采之。窈窕淑女,琴瑟友之。
参差荇菜,左右芼之。窈窕淑女,钟鼓乐之。
  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

客户端

client.py

# -*- coding: utf-8 -*-

from xmlrpc.client import ServerProxy

server = ServerProxy("http://localhost:8000")  # 连接服务
text = server.file_read("demo.txt")  # 调用服务器端函数
print(text)

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

必要说明

功能 函数
注册方法 SimpleXMLRPCServer.register_function(function[, name])
注册实例 SimpleXMLRPCServer.register_instance(instance[, allow_dotted_names])
注册反函数 SimpleXMLRPCServer.register_introspection_functions()
注册复合函数 SimpleXMLRPCServer.register_multicall_functions()

参考

  1. 如何用五点教会你Python高效编程
  2. Python中关于XML-RPC原理
  3. python使用SimpleXMLRPCServer实现简单的rpc

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/82013801

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。