我有一个api,我正在用于我正在进行的项目。我得到了一个密钥错误的客户端ID,我必须传递,以便调用api。我正在使用的api是Synapse。如果有人知道是什么引起错误或如何解决这个关键错误,那将是一个帮助...这是完整的错误。
KeyError at /
'client_id_...6YiBl'
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.8.6
Exception Type: KeyError
Exception Value:
'client_id_...YiBl'
Exception Location: C:\Users\OmarJandali\AppData\Local\Programs\Python\Python36\lib\os.py in __getitem__, line 669
Python Executable: C:\Users\OmarJandali\AppData\Local\Programs\Python\Python36\python.exe
Python Version: 3.6.1
Python Path:
['C:\\Users\\OmarJandali\\Desktop\\opentab\\opentab',
'C:\\Users\\OmarJandali\\AppData\\Local\\Programs\\Python\\Python36\\python36.zip',
'C:\\Users\\OmarJandali\\AppData\\Local\\Programs\\Python\\Python36\\DLLs',
'C:\\Users\\OmarJandali\\AppData\\Local\\Programs\\Python\\Python36\\lib',
'C:\\Users\\OmarJandali\\AppData\\Local\\Programs\\Python\\Python36',
'C:\\Users\\OmarJandali\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages']
这是代码:
import os
from synapse_pay_rest import Client
args = {
'client_id': os.environ['client_id_...YiBl'],
'client_secret': os.environ['client_secret_...C3IF'],
'fingerprint': '599378e9a63ec2002d7dd48b',
'ip_address': '127.0.0.1',
'development_mode':True,
'logging':False
}
client = Client(**args)
答案 0 :(得分:2)
您的代码看起来应该直接使用密钥,而您正在尝试访问环境变量。
基本上,请勿尝试通过os.environ()
访问这些值,因为它会让您的应用程序搜索名为client_id_...YiBl
的环境变量。
from synapse_pay_rest import Client
args = {
'client_id': 'client_id_...YiBl',
'client_secret':'client_secret_...C3IF',
'fingerprint': '599378e9a63ec2002d7dd48b',
'ip_address': '127.0.0.1',
'development_mode':True,
'logging':False
}
client = Client(**args)