Input strings must be a multiple of 16 in length

环境:ubuntu14.04  python

描述:

测试微信开放平台中公众号第三方平台的自动回复,在对xml加密时报错。加密用的是微信给的WXBizMsgCrypt,加密类型,为aes。

1,之前xml中text信息为英文时,没有报错,改成中文时报错。

我将xml的具体内容截取出来,直接调用WXBizMsgCrypt加密,报出新错误:

UnicodeDecodeError: 'utf8' codec can't decode byte 0xf8 in position 19: invalid start byte

2,上一步中的xml的类型为unicode,我将之改成str类型,结果不报错

3,于是不管错误了,针对需要加密的xml对象,我这里是以response为例,将之转化为str类型:

response = response.encode("utf-8")

之后再加密,就不会报错了。


很明显,我这是有针对对象的,其他报错的我不知道是不是同样的方法也能解决,查了一会儿还是不了解加密的问题。

不过百度时资料很少,所以将我的经历写出来,给碰到同样问题的人提供个思路吧。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值