簡體   English   中英

Google API在python 3中讀取.p12密鑰

[英]Google API Reading .p12 key in python 3

我正在嘗試將一些代碼從Python 2移植到3,但是當它讀取Google API .p12服務密鑰時會UnicodeDecodeError

with open('service_key.p12', 'r') as f:
    private_key = f.read()

這是錯誤

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x82 in position 1: invalid start byte

這段代碼在python 2.7中可以正常工作,在python 3.4中會中斷。另外,我還安裝了pyOpenSSL==0.14

在python 3中,您還必須使用'b'標志打開二進制文件:

with open('service_key.p12', 'rb') as f:
    private_key = f.read()

如上所述這里 ,二進制I / O不會做字符編碼/解碼。 之所以收到UnicodeDecodeError,是因為您使用了文本I / O,該I / O嘗試將數據解碼為UTF-8,但是您的數據無效UTF-8。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM