以下是Spotify API的文档(我使用的是隐式授权流):https://beta . developer . Spotify . com/documentation/general/guides/authorization-guide/# Implicit-Grant-Flow
我正在尝试在Google表格中编写脚本。我专注于基本设置,但我似乎无法让访问令牌正常工作。
解决了的:
我目前收到以下错误(似乎我的fetch方法的参数设置不正确):
“错误”:“unsupported_grant_type”,“error_description”:“grant_type必须是client_credentials、authorization_code或refresh_token”
解决方案:
根据Google Scripts方法UrlFetchApp,grant_type必须作为有效负载列出。fetch(请参阅下面的更新代码)
-
解决了的:
正如您在下面看到的,我在尝试获取令牌时使用“get”方法(尽管文档指定了“post”),因为post方法始终返回405错误。我认为这是我搞砸的一步。我假设我不应该使用csrf_token作为访问令牌。
解决方案:
https://accounts.spotify.com/token应该https://accounts.spotify.com/api/token
更新了以下工作代码:
var fetchParams = {
'method':'post',
'payload':{'grant_type':'client_credentials'},
'headers':{'Authorization':authorization},
'muteHttpExceptions':true
}
var replaceResponse = UrlFetchApp.fetch('https://accounts.spotify.com/api/token', fetchParams);
var regExp = /access_token(.*?):/;
var contentText = replaceResponse.getContentText();
var access_token = contentText.slice(contentText.search('access_token')+15,contentText.search(',')-1);
var requestOptions = {
'headers':{'Authorization':'Bearer '+access_token},
'muteHttpExceptions':true
}
var finalResponse = UrlFetchApp.fetch('https://api.spotify.com/v1/tracks/4dhARBZ8YLvm8oRDnCIeXr', requestOptions);
我修改了用于检索访问令牌的脚本,如下所示:curl-X“POST”-H“授权:基本ZjM4ZjAw…WY0MzE=“-d grant_type=client_credentialshttps://accounts.spotify.com/api/token。你能试试这个修改过的脚本吗?
var authorization = "Basic "+ Utilities.base64Encode('<client_id>:<client_secret>');
var fetchParams = {
method: 'post', // Modified
payload: {'grant_type': 'client_credentials'}, // Modified
headers: {'Authorization': authorization},
muteHttpExceptions: true
}
var replaceResponse = UrlFetchApp.fetch("https://accounts.spotify.com/api/token", fetchParams); // Modified
Logger.log(replaceResponse.getContentText())
如果响应消息更改了,请告诉我。
我试图使用以下所需信息从API生成访问令牌: 授权endpoint:https://api.paylocity.com/identityserver/connect/token 其他值请求必须在请求正文中发布以下表单编码值: grant_type=client_credentials范围=WebLinkAPI 我尝试使用Python'requests'包,但没有成功,请参见下面: 我已经验证了我的
我有一个Angular4应用程序托管在Azure Web应用程序和一个应用程序中。NET核心Web API托管在Azure API应用程序中。 该API由Azure Active Directory保护。目前,我使用ng2 adal获取一个访问令牌,并将其注入头中以执行API调用。 现在,我尝试删除ng2 adal模块,并使用相同的ClientId(如API)使用身份验证/授权功能保护我的Web应
我正在实现刷新令牌,我使用passportjs。我不完全理解的是,我应该在哪里以及如何检查访问令牌的有效性,以及在无效令牌到达的情况下抛出< code > tokenexpire exception 。 方法当前如下所示: 我想知道这样检查是否安全:
我正在尝试获取Spotify API访问令牌。根据Spotify API站点的这些说明: 请求将包括请求正文中的参数: null null 生成: 我正试图在这样的球拍中实现这一点: http.rkt 这很奇怪,因为它告诉我,即使我的grant_type是client_credentials(请参见当我调用on)时,我的grant_type不受支持。是什么导致了这一切?
我正在开发我的第一个Spotify应用程序,现在我正在处理授权过程。 到目前为止,我已经成功地从https://accounts.spotify.com/authorize 现在我通过PHP CURL request发送一个POST请求来获取我的访问令牌。 Spotify对此步骤的说明 我不断收到以下 JSON 错误响应,指示我的grant_type无效,它为我提供了三个有效的选项: {"erro
编辑:C#请求示例 编辑:我获得令牌的方式