【发布时间】:2013-08-15 07:30:30
【问题描述】:
是否可以在 Java Play Framework 2.x 中隐藏 url 参数?我发现了一个类似的问题,但他想隐藏它们以阻止 url 黑客攻击。所以他得到了除了隐藏网址之外的其他答案/解决方案。
问题是我有一些“信息对象”,它有一个我需要传递给几个动作、jquery 等的 ID,所以我需要在 url 中包含它。但我不希望任何用户看到 ID。
例如我有这个conf:
GET /deliverablegraph controllers.Application.deliverable_graph(id:Long,contextId:Long)
显示为 ../deliverablegraph?id=xxxx&contextId=yyyy
我只想显示 ../deliverablegraph,但需要访问 id 和 contextId。
【问题讨论】:
-
隐藏 URL 参数几乎可以肯定是错误的做法。为什么你(认为你)需要这样做?
-
ID 应该对用户保密,但我需要在不同页面之间发送 ID(我认为可以使用另一种解决方案)和 jquery。就像,当你点击某个东西时,这样做(“this”是使用 id)。
-
您可以将它们作为页面的一部分呈现在隐藏的表单字段中或作为 javascript 变量,但不会对用户“隐藏”它们。如果您需要 javascript 的这些值,那么想要的人也将能够访问它们。您可以做的是从您的 id 生成某种哈希并将其与 id 一起传递。这样你就有办法检查 id 值是否被弄乱了。
标签: playframework routes playframework-2.0