本文整理汇总了Python中xmlrpc.client.ServerProxy.delete方法的典型用法代码示例。如果您正苦于以下问题:Python ServerProxy.delete方法的具体用法?Python ServerProxy.delete怎么用?Python ServerProxy.delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xmlrpc.client.ServerProxy
的用法示例。
在下文中一共展示了ServerProxy.delete方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ServerProxy
# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
__author__ = 'PyBeaner'
from xmlrpc.client import ServerProxy
s = ServerProxy("http://localhost:20000",allow_none=True)
s.set("foo","bar")
print(s.get("foo"))
print(s.keys())
print(s.exists("foo"))
if s.exists("foo"):
s.delete("foo")
示例2: VerifyCertSafeTransport
# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
class VerifyCertSafeTransport(SafeTransport):
def __init__(self, cafile, certfile=None, keyfile=None):
super().__init__()
self._ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
self._ssl_context.load_verify_locations(cafile)
if certfile:
self._ssl_context.load_cert_chain(certfile, keyfile)
self._ssl_context.verify_mode = ssl.CERT_REQUIRED
def make_connection(self, host):
s = super().make_connection((host, {'context': self._ssl_context}))
return s
# Create the client proxy
s = ServerProxy('https://localhost:15000',
transport=VerifyCertSafeTransport('server_cert.pem',
'client_cert.pem',
'client_key.pem'),
allow_none=True)
s.set('foo', 'bar')
s.set('spam', [1, 2, 3])
print(s.keys())
print(s.get('foo'))
print(s.get('spam'))
s.delete('spam')
print(s.exists('spam'))
示例3: __init__
# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
class Client:
def __init__(self, ns_addr=None):
self.chunk_servers = []
if ns_addr is not None:
os.environ['YAD_NS'] = ns_addr
elif not os.getenv('YAD_NS'):
os.environ['YAD_NS'] = 'http://localhost:8888'
self.ns = ServerProxy(os.environ['YAD_NS'])
def list_dir(self, dir_path):
return self.ns.list_directory(dir_path)
def create_dir(self, path):
return self.ns.make_directory(path)
def delete_dir(self, path):
return self.ns.delete_dir(path)
def create_file(self, path, remote_path):
fn = path.split("/")[-1]
remote_filepath = os.path.join(remote_path, fn)
if not os.path.isfile(path):
return Status.not_found
with open(path, 'r') as fr:
data = fr.read()
return self._save_file_to_dfs(data, remote_filepath)
def _save_file_to_dfs(self, content, remote_filepath):
r = self._get_cs(remote_filepath)
if not r['status'] == Status.ok:
return r
cs_addr = r['cs']
cs = ServerProxy(cs_addr)
chunks = self.split_file(content)
data = {}
data['path'] = remote_filepath
data['size'] = len(content)
data['chunks'] = {}
for count, chunk in enumerate(chunks):
cs.upload_chunk(remote_filepath + '_{0}'.format(str(count)), chunk)
data['chunks'][remote_filepath + '_' + str(count)] = cs_addr
return self.ns.create_file(data)
def delete(self, path):
return self.ns.delete(path)
def download_file(self, path, dst_path):
result, content = self.get_file_content(path)
if result != Status.ok:
return {'status': result}
fn = path.split("/")[-1]
self.make_sure_path_exists(dst_path)
file_path = os.path.join(dst_path, fn)
with open(file_path, "w") as f:
f.write(content)
return {'status': Status.ok}
def get_file_content(self, path):
info = self.ns.get_file_info(path)
if info['status'] != Status.ok:
return info['status'], None
chunks = info['chunks']
content = ""
data = {}
for chunk, addr in chunks.items():
cs = ServerProxy(addr)
chunk_data = cs.get_chunk(chunk)
index = int(chunk.split("_")[-1])
data[index] = chunk_data
i = 0
while i < len(data):
content += data[i]
i += 1
return Status.ok, content
def get_file_info(self, path):
info = self.ns.get_file_info(path)
if info['status'] != Status.ok:
return info['status'], None
return Status.ok, info
def get_chunk(self, path, chunk_id):
info = self.ns.get_file_info(path)
if info['status'] != Status.ok:
return info['status'], None
chunks = info['chunks']
for chunk, addr in chunks.items():
if int(chunk.split("_")[-1]) == chunk_id:
#.........这里部分代码省略.........