Spotify API 授权授予流状态 415
Spotify API Authorization Grant Flow status 415
我正在尝试构建一个与 spotify API 集成的网络应用程序。为此,我正在使用授权授予流程。
我设法获得了授权码,但在后端测试应使用访问令牌交换授权码的端点时,我一直收到 415 响应状态。
这是端点正在使用的服务:
export async function getAccessAndRefresh(code: string): Promise<any> {
return axios.post(ACCESS_URL, {
data: {
"grant_type": "authorization_code",
"code": code,
"redirect_uri": REDIRECT_URI
},
headers: {
"Authorization": " Basic " + Buffer.from(CLIENT_ID + ":" + CLIENT_SECRET).toString("base64"),
"Content-Type": "application/x-www-form-urlencoded",
},
method: "POST",
json:true
})
}
此外,我写了这个单元测试来测试服务(我得到了 415 而 运行 这个单元测试):
describe("Request tests", () => {
let server: Server;
function initServer() {
server = createServer(App);
server.listen(5000);
}
function destroyServer() {
server.close();
}
test("Test refresh and access token returned by spotify api", () => {
return getAccessAndRefresh(AUTH_CODE).then((value)=>{
expect(value).toHaveProperty("access_token");
})
})
beforeAll(() => {
initServer();
});
afterAll(()=>{
destroyServer();
})
})
在测试中,AUTH_CODE
是我在浏览器中使用 API 密钥访问 https://accounts.spotify.com/authorize 端点手动获取的代码。
谁能帮我解决这个问题?谢谢!
在 Spotify Dashboard 中,您可能需要将重定向 URI 设置为您在代码中使用的 URL,如果出现以下错误,这些需要匹配:
{ "error": "invalid_grant", "error_description": "Invalid redirect URI" }
这就是您需要做的所有事情,只需转到获取客户端 ID 和客户端密码的仪表板,然后转到编辑设置,您将看到设置重定向 URI 的选项
我正在尝试构建一个与 spotify API 集成的网络应用程序。为此,我正在使用授权授予流程。
我设法获得了授权码,但在后端测试应使用访问令牌交换授权码的端点时,我一直收到 415 响应状态。
这是端点正在使用的服务:
export async function getAccessAndRefresh(code: string): Promise<any> {
return axios.post(ACCESS_URL, {
data: {
"grant_type": "authorization_code",
"code": code,
"redirect_uri": REDIRECT_URI
},
headers: {
"Authorization": " Basic " + Buffer.from(CLIENT_ID + ":" + CLIENT_SECRET).toString("base64"),
"Content-Type": "application/x-www-form-urlencoded",
},
method: "POST",
json:true
})
}
此外,我写了这个单元测试来测试服务(我得到了 415 而 运行 这个单元测试):
describe("Request tests", () => {
let server: Server;
function initServer() {
server = createServer(App);
server.listen(5000);
}
function destroyServer() {
server.close();
}
test("Test refresh and access token returned by spotify api", () => {
return getAccessAndRefresh(AUTH_CODE).then((value)=>{
expect(value).toHaveProperty("access_token");
})
})
beforeAll(() => {
initServer();
});
afterAll(()=>{
destroyServer();
})
})
在测试中,AUTH_CODE
是我在浏览器中使用 API 密钥访问 https://accounts.spotify.com/authorize 端点手动获取的代码。
谁能帮我解决这个问题?谢谢!
在 Spotify Dashboard 中,您可能需要将重定向 URI 设置为您在代码中使用的 URL,如果出现以下错误,这些需要匹配:
{ "error": "invalid_grant", "error_description": "Invalid redirect URI" }
这就是您需要做的所有事情,只需转到获取客户端 ID 和客户端密码的仪表板,然后转到编辑设置,您将看到设置重定向 URI 的选项