diff --git a/dubbo_client/registry.py b/dubbo_client/registry.py
index 5b707ef..ea775df 100644
--- a/dubbo_client/registry.py
+++ b/dubbo_client/registry.py
@@ -119,7 +119,7 @@
         # 全部重新添加
         self.__handler_nodes(interface, children)
 
-    def get_provides(self, interface, default=None, **kwargs):
+    def get_provides(self, interface, **kwargs):
         """
         获取已经注册的服务URL对象
         :param interface: com.ofpay.demo.api.UserProvider
@@ -130,7 +130,7 @@
         version = kwargs.get('version', '')
         key = self.__to_key(interface, version, group)
         second = self.__service_provides.get(interface, {})
-        return second.get(key, default)
+        return second.get(key, {})
 
 
 if __name__ == '__main__':
diff --git a/dubbo_client/rpclib.py b/dubbo_client/rpclib.py
index d09f8cb..61b8a38 100644
--- a/dubbo_client/rpclib.py
+++ b/dubbo_client/rpclib.py
@@ -32,7 +32,7 @@
         self.registry.subscribe(interface)
 
     def call(self, method, *args, **kwargs):
-        provides = self.registry.get_provides(self.interface, {}, version=self.version, group=self.group)
+        provides = self.registry.get_provides(self.interface, version=self.version, group=self.group)
         if len(provides) == 0:
             raise NoProvider('can not find provide', self.interface)
         ip_port, service_url = random.choice(provides.items())
