searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

基于Python xmlrpc模块实现RPC功能

2023-08-07 05:57:17
34
0

   xmlrpc将数据定义为xml格式,通过http协议进行远程传输,有了它客户端可以在远程服务器上调用带参方法。

 

        在python下使用XML-RPC需要导入库:xmlrpc.server和xmlrpc.client。大致使用方法:在server端导入SimpleXMLRPCServer运行XMLRPC服务器,定义并注册函数;在client端导入xmlrpc.client,使用xmlrpc.client.ServerProxy连接到服务器,即可调用服务器端的函数了。

   看一个简单的例子,实现在客户端打印“Hello World”功能:

    • server
  • #!/usr/bin/python
    #-*- coding: utf-8 -*-
    from xmlrpc.server import SimpleXMLRPCServer
    
    def Hello():
        return "Hello World"
    
    # 指定ip、port
    server = SimpleXMLRPCServer(("XXX.XXX.XX.XXX",3000))
    # 注册函数
    server.register_function(Hello, 'Hello')
    
    try:
        server.serve_forever()
    
    # 键入ctrl+c结束
    except KeyboardInterrupt:
        pass
     
    • client
  • #!/usr/bin/python
    #-*- coding: utf-8 -*-
    from xmlrpc.client
    
    server = xmlrpc.client.ServerProxy("http://XXX.XXX.XX.XXX:3000")
    
    # 调用服务器端函数
    print(server.Hello())
  •  

   运行之后可以看到server每次被访问会打印访问来源:

   

   client输出结果:

   

   xmlrpc.client和xmlrpc.server还有很多对象,具体可查看官方文档:https://docs.python.org/zh-cn/3.7/library/xmlrpc.html

   基于xmlrpc,可以实现简单的文件系统操作指令,包括ls、mkdir、rmdir等,还可以实现文件互传功能。

 

0条评论
0 / 1000
李****想
2文章数
0粉丝数
李****想
2 文章 | 0 粉丝
李****想
2文章数
0粉丝数
李****想
2 文章 | 0 粉丝
原创

基于Python xmlrpc模块实现RPC功能

2023-08-07 05:57:17
34
0

   xmlrpc将数据定义为xml格式,通过http协议进行远程传输,有了它客户端可以在远程服务器上调用带参方法。

 

        在python下使用XML-RPC需要导入库:xmlrpc.server和xmlrpc.client。大致使用方法:在server端导入SimpleXMLRPCServer运行XMLRPC服务器,定义并注册函数;在client端导入xmlrpc.client,使用xmlrpc.client.ServerProxy连接到服务器,即可调用服务器端的函数了。

   看一个简单的例子,实现在客户端打印“Hello World”功能:

    • server
  • #!/usr/bin/python
    #-*- coding: utf-8 -*-
    from xmlrpc.server import SimpleXMLRPCServer
    
    def Hello():
        return "Hello World"
    
    # 指定ip、port
    server = SimpleXMLRPCServer(("XXX.XXX.XX.XXX",3000))
    # 注册函数
    server.register_function(Hello, 'Hello')
    
    try:
        server.serve_forever()
    
    # 键入ctrl+c结束
    except KeyboardInterrupt:
        pass
     
    • client
  • #!/usr/bin/python
    #-*- coding: utf-8 -*-
    from xmlrpc.client
    
    server = xmlrpc.client.ServerProxy("http://XXX.XXX.XX.XXX:3000")
    
    # 调用服务器端函数
    print(server.Hello())
  •  

   运行之后可以看到server每次被访问会打印访问来源:

   

   client输出结果:

   

   xmlrpc.client和xmlrpc.server还有很多对象,具体可查看官方文档:https://docs.python.org/zh-cn/3.7/library/xmlrpc.html

   基于xmlrpc,可以实现简单的文件系统操作指令,包括ls、mkdir、rmdir等,还可以实现文件互传功能。

 

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0