【发布时间】:2020-01-16 21:44:23
【问题描述】:
我正在使用 react-spotify-login 包,但在尝试授权应用程序时,我无法检索访问令牌。我的路由有效并且发送请求有效。我只是无法检索令牌。我刚刚开始学习 react,所以我希望这不是我容易忽视的东西。
import React, { Component } from 'react';
import SpotifyLogin from 'react-spotify-login';
import { clientId, redirectUri } from '../../Settings';
import { Redirect } from 'react-router-dom';
export class Login extends Component {
render() {
const onSuccess = ({ response }) => {
//const { access_token: token } = response;
console.log("[onSuccess]" + response);
return <Redirect to='/home' />
};
const onFailure = response => console.error("[onFailure]" + response);
return (
<div>
<SpotifyLogin
clientId={clientId}
redirectUri={redirectUri}
onSuccess={onSuccess}
onFailure={onFailure}
/>
</div>
);
}
}
export default Login;
【问题讨论】:
-
你是什么意思,“我只是无法检索令牌”?
-
response是什么样的?它在控制台上打印什么? -
我在响应中收到错误“错误:'access_token'未找到”,我所说的“我不能只接收令牌”的意思是应用程序似乎正在正确路由到登录组件并发出请求,但我收到前面所述的错误而不是令牌
-
更新:尝试在 App.js 文件中运行相同的代码时,会调用 OnSuccess 函数但未定义响应。
-
我不知道具体的库,但从代码看来,onSuccess 期待您没有传递的参数。需要像
onSuccess={() => onSuccess({ response: setSomethingHere })}这样的东西。除非图书馆只是应该返回响应?如果是这样,那么不要在函数中解构,只需使用单个参数并控制台记录您从中获得的任何内容
标签: javascript reactjs api spotify