【问题标题】:Okta Authentication, Cannot GET /implicit/callbackOkta 身份验证,无法获取/隐式/回调
【发布时间】:2019-01-25 07:38:40
【问题描述】:

我正在按照本指南 https://developer.okta.com/quickstart/ 向我的 React 应用程序添加身份验证。我已经按照指南设置了所有内容,并从演示预览站点获取了 id 令牌。日志显示身份验证成功并返回一个 id 令牌。 This 是重定向的样子。

在重定向时出现此错误:Cannot GET /implicit/callback 显示在浏览器中。我哪里做错了?

这就是我的 index.js 在 React 中的样子:

import { Security, SecureRoute, ImplicitCallback } from '@okta/okta-react';

ReactDOM.render((
  <HashRouter>
    <Switch>
        <Security issuer={config.issuer}
                  client_id={config.clientId}
                  redirect_uri={config.redirect_uri} >
            <Route path='/' exact={true} component={Full}/>
            <Route path='/implicit/callback' component={ImplicitCallback} />
        </Security>
    </Switch>
  </HashRouter>
), document.getElementById('root'));

我认为这可能与 HashRouter 和 CoreUI 有关,但我不知道究竟是什么问题,因为我可以使用正常的 create-react-app 模板运行它。

【问题讨论】:

  • 我刚刚完成了 React 快速入门中的步骤,并且能够让一切正常工作。你可以在github.com/mraible/okta-react-quickstart找到我的项目。
  • 我能够使用 create-react-app 模板启动并运行它。对于这个我使用 CoreUi github.com/mrholek/CoreUI-React/tree/master/React_Starter 。似乎无法让它在那里运行。如果工作量不大,您可以看一眼,看看是否可以在那里完成。非常感谢!
  • @MattRaible 知道如何使用 HashRouter 而不是 BrowserRouter 来完成此任务吗?
  • 会不会是 webpack 的问题?

标签: reactjs authentication oauth okta


【解决方案1】:

这是 Webpack 的问题。 在 webpack 配置中设置 devServer.historyApiFallback: true 和 output.publicPath: '/' 解决了这个问题。

HashRouter还是不行,只能用BrowserRouter了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-29
    • 2021-01-11
    • 2015-06-21
    • 1970-01-01
    • 1970-01-01
    • 2020-10-06
    • 1970-01-01
    • 2021-04-21
    相关资源
    最近更新 更多