我正在设置一个程序来帮助用户记录研究论文的笔记,我需要将client_secret.json
与程序文件分离,以确保其在线安全。我如何从JSON中获取creds,而不需要将其作为python程序的文件?
scope = ["https://spreadsheets.google.com/feeds","https://www.googleapis.com/auth/drive"]
creds = ServiceAccountCredentials.from_json_keyfile_name('client_secret.json', scope)
gs = gspread.authorize(creds)
字符串
在上面的代码中,有没有一些方法可以使用json响应而不是client_secret.json文件,比如:
creds = requests.get("json storage").json
型
2条答案
按热度按时间vnzz0bqm1#
最好的方法是将secret JSON的密钥创建为环境变量,并使用一个函数返回与json相同格式的dict,然后可以与auth方法from_json_keyfile_dict一起使用
这就是我如何做的,以及我如何调用我的环境变量:
字符串
xghobddn2#
菲利普的回答是正确的,但对我来说不太管用。
我不得不更改
create_keyfile_dict
方法,将.replace("\\n", "\n")
添加到private_key
。这是我的最终结果:
字符串