java - /oauth/授权/在浏览器中单击链接时不起作用,但在浏览器中输入时起作用
问题描述
所以我似乎无法解决这个问题......
这可能是什么原因?
我的设置:
我将Spring Boot 2.3.3与Vaadin 17.0.3结合使用。对于 oauth,我使用Spring-Boot-Oauth2。(几乎本教程:“https://vaadin.com/learn/tutorials/google-login”)
它在 Vaadin 14 上工作,但我猜在切换到 Vaadin 16 后出现了问题……我试图测试一些东西,但回滚对我来说并不容易。
我的 JDK 是 Java 14。
当我尝试单击我的 OAuth 链接之一时,例如"/oauth/authorization/google"
,我的应用程序返回 404。但是当我在浏览器中输入相同的链接时,它可以工作。
我不知道从哪里开始,但我怀疑它与 Vaadins RouterLayout 有关系。
有什么想法可能导致这种情况吗?我不能发布代码,因为我不知道错误可能在哪里......
如果您需要更多信息,请随时询问。
解决方案
您可以将router-ignore
其作为属性添加到链接上,以使路由器不会将其解释为内部链接,该链接应仅触发更改视图而无需重新加载页面。
因此,您的链接可能类似于<a href="/oauth/authorization/google" router-ignore>Log in with Google</a>
.
推荐阅读
- pyxb - PyXB 随机添加/删除 xmlns="http://www.w3.org/1999/xhtml"
- android - 使用 Proguard 后自定义类(扩展接口)的 NoClassDefFoundException
- javascript - twitter 是否支持“使用 twitter 登录”的 oauth2?
- unity3d - Unity 的渲染器是否读取了未使用的纹理像素?
- django - ModuleNotFoundError:没有名为“django_filters”的模块
- javascript - 无法将数据“19-10-2002”转换为日期
- razor - 我可以在 Razor (Umbraco 8) 中重用部分代码吗?
- reactjs - 无法呈现来自 API 的数据作为道具传递(ReactJS)
- ruby-on-rails - 如何在rails中按日期范围查找出勤率?
- twitter-bootstrap - Boostrap在一列上绘制两个面板