使用HTTPS连接重定向响应

时间:2013-08-23 15:33:50

标签: java httpurlconnection urlconnection http-redirect httpsurlconnection

创建了一个新的HTTPS连接,并在连接URL上执行了GET方法调用。

我没有发送301(30X)重定向,而是收到了XHTML页面数据的响应,在浏览器中处理时会自动提交并发送到重定向页面,但是如何在java代码中处理相同的内容?

以下是回复数据

     <?xml version="1.0" encoding="UTF-8"?>
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
      <body onload="document.forms[0].submit()">
       <noscript><p><strong>Note:</strong> Since your browser does not support JavaScript, you must press the Continue button once to proceed.</p></noscript>
       <form action="https://localhost:8083/Login" method="POST">
          <div>
             <input type="hidden" name="RelayState" value=""/>
             <input type="hidden" name="ResponseData" value=""/>
          </div>
          <noscript>
             <div>
               <input type="submit" value="Continue"/>
             </div>
         </noscript>
       </form>
     </body>
   </html>

仅供参考:我只需要在表单action属性中向URL发送HTTP / HTTPS请求。我不打算在浏览器中打开html。

1 个答案:

答案 0 :(得分:0)

您能提供连接代码吗?作为通用方法,您可以为HttpUrlConnection设置setInstanceFollowRedirect(false),以便重定向不会通过,您可以手动处理它们。这是一个很好的例子:http://www.mkyong.com/java/java-httpurlconnection-follow-redirect-example/