因此,我已经阅读了一些有关此的SO问题,并阅读了许多Auth0教程,但是我仍然无法获得访问令牌以与我的自定义API一起使用。
我已经遵循了React的Auth0 SPA教程。 然后,我遵循了“从单页应用程序调用API”教程。 我创建了一个“ auth0-authorization-extension-api”。 我启用了对自定义API的API访问权限。
我觉得我已经完成了必要的步骤,但是我觉得我缺少如何从我的React客户端请求正确的访问令牌的机会。
我的Axios自定义挂钩在useEffect内包含以下代码:
const send = async () => {
try {
await getTokenSilently().then(async (token: string) => {
const config = {
method: method as "GET" | "POST",
withCredentials: true,
data: providedData,
headers: {
Authorization: "Bearer " + token
}
};
const result = await axios(address + uri, config);
});
} catch (error) {
if (!canceled) {
dispatch({ type: "FETCH_FAILURE" });
}
}
};
发送到我的API的访问令牌不是完整的jwt,而是一串数字和字母,长度约为35位。
每次我从自定义API中收到错误UnauthorizedError: jwt malformed
。
我的React SPA受众为http://localhost:3000
,API受众为http://localhost:8080
。
我在这里错过了一些简单的东西吗?还是我看错地方了?