pysvn.Client.callback_ssl_server_trust_prompt错误

sha*_*awn 4 python pysvn

嘿伙计们,我pysvn.Client.callback_ssl_server_trust_prompt required在尝试提交时遇到错误.我理解它与信任互联网验证有关.

这是文档,我只是不明白.

pysvn.Client.callback_ssl_server_trust_prompt

import pysvn

def ssl_server_trust_prompt( trust_dict ):
    return retcode, accepted_failures, save

client = pysvn.Client()
client.callback_ssl_server_trust_prompt = ssl_server_trust_prompt
Run Code Online (Sandbox Code Playgroud)

每次HTTPS服务器提供证书时都会调用callback_ssl_server_trust_prompt,而subversion不确定它是否应该被信任.调用callback_ssl_server_trust_prompt,其中包含有关trust dict中证书的信息.

failure - int - 失败的位掩码 - [这些位是什么意思?] hostname - string - 证书从finger_print呈现的主机名 - 字符串 - 证书指纹valid_from - 字符串 - 从此ISO8601日期有效valid_until - string - valid util这个ISO8601 date issuer_dname - stirng - 发布的dname领域 - 字符串 - 领域pysvn期望callback_ssl_server_trust_prompt返回三个值的元组(retcode,accepted_failures,save).

retcode - boolean,如果没有可用的用户名和密码,则为False.如果subversion使用用户名和密码,则为True.accepted_failures - int,允许接受的失败save - boolean,如果你想让subversion记住配置目录中的证书,则返回True.返回False以防止保存证书.

小智 6

当pysvn尝试在您使用https访问的存储库上执行操作时,它需要验证服务器标识.这是通过调用一个名为callback_ssl_server_trust_prompt的函数来完成的.默认情况下,此功能未定义.作为程序员,您必须提供信任信息,您可以通过编写查看信任字典中信息的函数来执行此操作,并返回3个值的元组(在文档的第3段中描述).

编写完该函数后,通过将函数名称赋值给client.callback_ssl_server_trust_prompt,使其成为callback_ssl_server_trust_prompt.