XMLRPC c#客户端到python客户端方法不存在
本文关键字:客户端 方法 不存在 python XMLRPC | 更新日期: 2023-09-27 18:06:03
我搜索了网络,看到了以下问题:XML-RPC c#和Python RPC服务器
我也试了一段时间,但我失败了。我得到的异常"方法"HelloWorld是不支持的…
[XmlRpcUrl("http://192.168.0.xxx:8000/RPC2")]
public interface HelloWorld : IXmlRpcProxy
{
[XmlRpcMethod]
String HelloWorld();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
HelloWorld proxy = CookComputing.XmlRpc.XmlRpcProxyGen.Create<HelloWorld>();
textBox1.Text = proxy.HelloWorld();
}
catch (Exception ex)
{
HandleException(ex);
}
}
我的Python服务器是:
class LGERequestHandler(SimpleXMLRPCRequestHandler):
rpc_paths = ('/RPC2',)
def HelloWorld():
return "This is server..."
server = SimpleXMLRPCServer(("192.168.0.xxx", 8000),
requestHandler=LGERequestHandler)
server.register_introspection_functions()
server.register_function("HelloWorld", HelloWorld)
server.register_instance(self)
# Run the server's main loop
server.serve_forever()
服务器已经启动并运行,但是我仍然得到一个异常。
我发现问题了:
-
语法问题
server.register_function("HelloWorld", HelloWorld)
应该是server.register_function(HelloWorld, "HelloWorld")
-
这个变化也没有工作,所以我把函数名从
helloWorld
改为hello
,它工作了(!)