编程语言
首页 > 编程语言> > 可以在Python中按名称(作为字符串)调用XML-RPC方法吗?

可以在Python中按名称(作为字符串)调用XML-RPC方法吗?

作者:互联网

python中,调用XML-RPC方法涉及在代理对象上调用方法:

from xmlrpclib import ServerProxy
print ServerProxy('https://example.com/rpc').api.hello_there('John')

在其他语言(如perl)中,您将方法名称作为方法参数传递.

use Frontier::Client;
$p = Frontier::Client->new(url => 'https://example.com/rpc');
$result = $p->call('api.hello_there', 'John');
print $result;

有没有一种方法可以在Python中通过名称(如字符串)来调用XML-RPC方法?

解决方法:

与任何Python对象一样,只需使用getattr.

func = getattr(ServerProxy('https://example.com/rpc'), "api.hello_there")
print func('John')

标签:xml-rpc,getattr,call,xmlrpclib,python
来源: https://codeday.me/bug/20191208/2094790.html