标签: simplexmlrpcserver

xmlrpc响应数据类型可能很长?

是否有可能允许long intPython simplexmlrpc服务器的xmlrpc扩展(数据类型)?

客户端使用Apache xmlrpc,它允许8字节整数.

基本上,我正在使用此函数的示例代码来测试它:

def FcnRLong():
    x=8000000000L
    return x
Run Code Online (Sandbox Code Playgroud)

这会导致此错误:

Java exception occurred:
org.apache.xmlrpc.XmlRpcException: <type 'exceptions.OverflowError'>:long int exceeds XML-RPC limits
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?是否有支持Python 2.7的xmlrpc服务器long int

python xml-rpc simplexmlrpcserver xmlrpclib python-2.7

4
推荐指数
1
解决办法
3179
查看次数

Python多线程XMLRPC服务器(?)

基本上我想在单独的线程中运行我的xmlrpc服务器或者与我的其他代码一起运行,但是,在server.serve_forever()我无法在此函数之后运行另一个代码之后.似乎server.serve_forever()在那里永远奔跑.

self.LocalServer = SimpleThreadedXMLRPCServer(("localhost",10007))
self.LocalServer.register_function(getTextA) #just return a string
self.LocalServer.serve_forever()
print "I want to continue my code after this..."
.... another code after this should running together with the server
Run Code Online (Sandbox Code Playgroud)

我尝试了多线程概念,但在这里仍然没有运气.Basicaly我想和我的其余代码一起运行xmlrpc服务器.

谢谢你的帮助.

python multithreading simplexmlrpcserver

3
推荐指数
1
解决办法
5457
查看次数

多线程 XML-RPC (python3.7.1)

服务器:

  import time                                                                   
  import random                                                                 
  from threading import Thread                                                  
  from xmlrpc.server import SimpleXMLRPCServer                                  

  class ServerThread(Thread):                                                   
      def __init__(self, server_addr):                                          
      ?   Thread.__init__(self)                                                 
      ?   self.server = SimpleXMLRPCServer(server_addr)                         
      ?   self.server.register_function(sleep, 'sleep')                         

      def run(self):                                                            
      ?   self.server.serve_forever()                                           

  # sleep for random number of seconds                                          
  def sleep():                                                                  
      r = random.randint(2,10)                                                  
      print('sleeping {} seconds'.format(r))                                    
      time.sleep(r)                                                             
      return 'slept {} seconds, exiting'.format(r)                              

  # run server                                                                  
  def run_server(host="localhost", port=8000):                                  
      server_addr = (host, port)                                                
      thread1 = ServerThread(server_addr)                                       
      thread1.start()                                                           
      print("Server thread started. Testing server ...")                        
      print('listening on {} port {}'.format(host, port))                       

  if __name__ …
Run Code Online (Sandbox Code Playgroud)

python simplexmlrpcserver python-multithreading

2
推荐指数
1
解决办法
1739
查看次数

为什么xmlrpc客户端无法通过xmlrpc服务器过程将项目附加到列表中?

服务器代码(基于Python库参考):

from xmlrpc.server import SimpleXMLRPCServer
from xmlrpc.server import SimpleXMLRPCRequestHandler

class RequestHandler(SimpleXMLRPCRequestHandler):
    rpc_paths = ()

server = SimpleXMLRPCServer(("127.0.0.1", 8000),
                            requestHandler=RequestHandler)
server.register_introspection_functions()

l = list()

def say_hi():
    return 'hi !'

def append(event):
    l.append(event)

server.register_function(say_hi)
server.register_function(append)

server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

客户端(解释器从另一个终端窗口启动):

>>> from xmlrpc.client import ServerProxy
>>> s = ServerProxy('http://127.0.0.1', allow_none=True)
>>> s.say_hi()
'hi !'
>>> s.append(1)
Traceback (most recent call last):
...
xmlrpc.client.Fault(Fault 1: "<class 'TypeError'>:cannot
                    marshal None unless allow_none is enabled")
Run Code Online (Sandbox Code Playgroud)

我该如何解决?我不正确地使用xmlrpc吗?

python xml-rpc simplexmlrpcserver xmlrpcclient

1
推荐指数
1
解决办法
7866
查看次数