【问题标题】:How to hide query string URL in Struts 2如何在 Struts 2 中隐藏查询字符串 URL
【发布时间】:2018-09-01 06:37:47
【问题描述】:

如何在 Struts 2 中隐藏查询字符串 URL。

我们正在使用第三方 URL,当我们点击 URL 时它会打开一个 PDF,我们希望在查询字符串 URL 中隐藏一些参数。 当我们以任何方式点击 url 时,在 URL 中传递发票编号和 Date 这两个参数我们想要隐藏。

如果我们在使用 URL 标签时不能隐藏 using 查询字符串?上述情况的替代方案是什么?

网址:http://dart.corp.xerox.com/WorkplaceXCS/GetDocument?DocumentClass=INV&invno=086664659&invdt=11/01/2016

【问题讨论】:

  • 对客户端隐藏查询的唯一方法是在服务器上运行它并将结果发送回浏览器。您可以使用 POST,但仍然可以从控制台轻松检索请求。

标签: spring-mvc url servlets struts2 query-string


【解决方案1】:

您可以使用表单标签并隐藏带有隐藏输入字段的参数,然后使用带有参数的 URL,如下面的答案。

This is the answer:

您可以添加一个表单来触发表单提交事件,而不是默认链接的click 事件。表单应该包含一个隐藏字段来保存参数值。然后添加javascript代码来处理click事件。

<s:url action="custACDetails" includeContext="false" var="urlTag"/>
<s:set var="contextPath">${pageContext.request.contextPath}</s:set>
<s:a id="acno" href="%{#contextPath+#urlTag}"><s:property value="acno"/></s:a>
<s:form id="form" action="%{#urlTag}" method="POST">
  <s:hidden name="yourAc" value="%{acno}"/>
</s:form>
<script type="text/javascript">
  $(document).ready(function() {
    $("#acno").click(function(e) {
      e.preventDefault();
      $("#form").submit();
    });
  });
</script>

【讨论】:

  • 以上代码不起作用,在这种情况下 url 没有隐藏。
猜你喜欢
  • 2012-01-23
  • 2013-02-16
  • 1970-01-01
  • 1970-01-01
  • 2011-08-26
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多