1

我必须管理这种 URL:

http://localhost:9000/oauth2callback#state=/&access_token=ya29.....

我的 Play 2.0 的 routes.conf 看起来像这样:

GET     /oauth2callback             controllers.Application.testGoogleCallback(access_token: Option[String])

不幸的是,看起来 URL 的#state=/部分使testGoogleCallback操作的access_token参数未填写(但规则匹配并且该操作被正确调用)。

以下 URL 按方面工作,并且我在操作中正确获取了access_token参数。

http://localhost:9000/oauth2callback?access_token=ya29.....

关于如何指定片段标识符是 routes.conf 文件中 URL 的一部分的任何想法?

提前谢谢

反相

4

2 回答 2

3

哈希标记被浏览器解释为本地锚点,不会发送到服务器。这不是特定于 playframework 的问题,而是 URI 规范的一部分。

是否有任何特定原因需要它作为主题标记?您的有效 URL 是有效的 HTML 语法,这是我希望看到的!?

于 2012-08-16T15:38:28.863 回答
0

RFC 3986#在哈希标记片段标识符之后命名 URI 部分,然后说:

因此,片段标识符不用于 URI 的特定于方案的处理;相反,片段标识符在解引用之前与 URI 的其余部分分开,因此片段本身的标识信息仅由用户代理解引用,而与 URI 方案无关。

这意味着片段标识符由浏览器处理,甚至不会发送到服务器。

于 2016-12-23T06:34:28.080 回答