【问题标题】:How to send query parameters from one web application to another?如何将查询参数从一个 Web 应用程序发送到另一个?
【发布时间】:2016-08-21 10:59:56
【问题描述】:

我有一个要求,我必须重定向到另一个 Web 应用程序的页面并通过查询字符串发送信息。

以下是WEB-APP 1的示例代码:

<html>
    <body>
        <form action="http://localhost:8080/WebApp2/default.htm?name=Akshay&surname=lokur">
            <input type="submit" value="click me!">

        </form>
    </body>

</html>

当用户单击提交按钮时,default.htm(位于另一个 Web 应用程序中)应该打开并且应该接收查询参数,即。 “名和姓”。

目前,default.html 已打开,但未收到任何发送的查询参数!

【问题讨论】:

  • 您指的是default.htm,而不是default.html。此外,打开带有查询参数的 URL 不会在途中“丢失”它们。如果没有任何进一步的解释,我们无法为您提供帮助。
  • 是的,很奇怪,但我在另一个 Web 应用程序的 default.htm 中没有得到任何查询参数。

标签: java jsp redirect web-applications query-parameters


【解决方案1】:

如果您尝试在 html 中显示请求参数,那么您可以这样做

<html>
    <body>
        <form action="http://localhost:8080/WebApp2/default.jsp?name=Akshay&surname=lokur">
            <input type="submit" value="click me!">

        </form>
        <div><%=(request.getParameter("name")!=null?request.getParameter("name"):"")%></div>
    </body>

</html>

发生了什么事?

  • &lt;% & %&gt; 是 Java 脚本的标签。

  • (condition?statement if true:statement if false)

    是一个ternary if,类似于:

if(<condition>){
   statement if true;
}else{
   statement if false;
}
  • 所以,上面添加的代码(request.getParameter("name")!=null?request.getParameter("name"):"")变成了类似:
if(request.getParameter("name")!=null){
   request.getParameter("name");
}else{
   "";
}
  • 最后,

=

只是在那里显示条件结果

希望对你有所帮助。

编辑:刚刚注意到您没有使用 jsp(为什么?鉴于您想显示发布的数据)。将我的版本更改为 jsp,因为这是我们可以在 html 中显示请求参数的唯一方法。

【讨论】:

    【解决方案2】:

    这看起来应该对我有用。是什么让您认为参数未发送?我建议在安装了 Firebug 的 Firefox 中加载您的页面,然后单击 Firebug 并查看网络选项卡。然后单击您的提交按钮,您将能够在网络面板中看到已发送的参数。如果您可以验证该参数是否已发送,那么您在另一台服务器上检查它们的方式可能不起作用。

    【讨论】:

      猜你喜欢
      • 2023-03-26
      • 2012-11-13
      • 1970-01-01
      • 2016-02-03
      • 2017-01-30
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多