java 创建url服务,在Java中,如何基于url创建HttpsURLConnection或HttpURLConnection?

  • Post author:
  • Post category:java


我正在开发一个项目,该项目正在创建一个类来运行http客户端请求(我的类充当客户端)。它接受一个url和一个请求方法(GET,POST,PUT等),我希望能够解析该URL并根据它是https还是http打开HttpsURLConnection或HttpURLConnection(假定给定的url始终是正确)。

如果我执行以下操作:

URLConnection conn = url.openConnection();

然后,这将自动创建一个可以同时接受http和https的URLConnection,但是如果执行此操作,那么我将找不到任何设置请求方法的方法(GET,POST等),因为只有HttpsURLConnection或HttpURLConnection类具有setRequestMethod方法。

如果我执行以下操作:

if(is_https)

HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();

else

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

然后创建了连接,但是我无法在if块之外访问它们。

是否可以这样做,还是我应该放弃并使用apache httpclient类?