使用Play框架2重定向URL片段

3

我如何在使用Redirect方法创建的链接中添加URL片段(#xyz)?

我想要实现这样的效果:

Redirect(routes.Comment.get(itemId) + "#xyz")
2个回答

2
使用Play Framework 2.4,可以实现以下功能:
Redirect(routes.Comment.get(itemId).withFragment("#xyz").toString)

1
这对我有效。我很惊讶toString是必需的,虽然没有编译错误,但片段无法通过。 - js.
withFragment() 会自动添加 # 号,因此您可以省略它。为了纪念,“withFragment()”是通过 PR 4152 添加的: https://github.com/playframework/playframework/pull/4152 - Ceasar

2

你可以使用 .url 从路由中获取url(其中包含相对路径)。Redirect 需要两个参数来接受一个字符串以重定向到其它页面

所以,Redirect(routes.Comment.get(itemId).url + "#xyz", SEE_OTHER) 应该起作用

当我意识到 Redirect() 需要一个 Call 而不是一个字符串时进行了编辑


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接