我正在尝试使用lyft开发人员api。我创建了一个新的应用程序来获取客户端ID和客户端的秘密。我按照https://developer.lyft.com/docs/authentication中的步骤在我的python代码中获取访问令牌。但我总是得到错误,"未经授权的客户"。谁能指出我的错误?
def __init__(self):
self.client_id = 'MY_ID'
self.client_secret = 'MY_SECRET'
# obtain access token
self.token = self.__generate_token__()
# define variables to be used in the request parameters
token_val = 'Bearer '+self.token
self.headers = {'Authorization':token_val}
def __generate_token__(self):
url = 'https://api.lyft.com/oauth/token'
# define request parameters
payload = {"Content-Type": "application/json",
"grant_type": "client_credentials",
"scope": "public"}
# request data
res = requests.post(url,
data = payload,
auth = (self.client_id, self.client_secret))
# extract the token from the response
token = res.json()['access_token']
return token
答案 0 :(得分:0)
这是Java客户端的工作示例
看起来不对的主要问题是发送" Content-Type"在POST数据体中而不是表示数据格式的标题。
看起来你应该发送requests api" json = payload"而不是"数据"。但我不是这个python API的专家。
上述java代码的卷曲等价物也可以使用
./gradlew clean build