我正在开发一个项目,该项目正在创建一个类来运行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类?