python base64 decode出现incorrect padding错误的解决方法

python的base64.decodestring或者base64.b64decode方法做base64解码时报错:

Traceback(most recent calllast):File"/export/www/outofmemory.cn/controllers/user.py",line136,indecryptPassword

encryptPwd=base64.b64decode(encryptPwd)File"/usr/lib/python2.7/base64.py",line76,inb64decoderaiseTypeError(msg)TypeError:Incorrectpadding


解决此问题的方法很简单,对base64解码的string补齐等号就可以了,如下代码:

def decode_base64(data):

    """Decode base64, padding being optional.

    :param data: Base64 data as an ASCII byte string

    :returns: The decoded byte string.

     """

    missing_padding=4-len(data)%4

    if missing_padding:

        data+=b'='*missing_padding

    returnbase64.decodestring(data)

    #returnbase64.b64decode(data)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 01.{ 换行: Opening Brace Can't Be Placed on a Separate Lin...
    码农不器阅读 2,429评论 0 14
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,107评论 19 139
  • 那是水 圣洁却冷漠 因为 想要改变自己 虽然 理想实现了 但付出了生命 静静地 沉默着冰冷的心 空虚又期待着 只为...
    走在路上的沉默阅读 347评论 0 7
  • 七岁那年 她对他说 “哥哥我爱你 娶我好不好” 他却只把她当妹妹 拗不过父母之命 只好答应 “若你十八岁之时 仍能...
    寻迁柩阅读 782评论 0 1
  • ## 测试
    wangjuntytl阅读 167评论 0 0