错误异常如下: alipay.aop.api.exception.Exception.RequestException: [21f81216-0a1d-11ea-ba6c-00163e025e1e]request sign failed. int() argument must be a string, a bytes-like object or a number, not 'Sequence'
错误方法如下: def sign_with_rsa2(private_key, sign_content, charset): if PYTHON_VERSION_3: sign_content = sign_content.encode(charset) private_key = fill_private_key_marker(private_key) signature = rsa.sign(sign_content, rsa.PrivateKey.load_pkcs1(private_key, format='PEM'), 'SHA-256') sign = base64.b64encode(signature) if PYTHON_VERSION_3: sign = str(sign, encoding=charset) return sign
引发错误的地方: signature = rsa.sign(sign_content, rsa.PrivateKey.load_pkcs1(private_key, format='PEM'), 'SHA-256')
在使用非官方sdk请求是正常的 在此链接:阿里链接中也是同样问题,有一位作者说是签名字符串的问题,前面字符串是指的是支付宝公钥个人私钥字符串?
实际上官方sdk也仅仅需要修改 - alipay_client_config.app_id = '我的app_id'
alipay_client_config.app_private_key = '我的私钥'
alipay_client_config.alipay_public_key = '支付宝公钥'
就可以测试了, 但是就出现了上述问题
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。