我试图在我的代码中引入一个MalformedURLException来测试我对它的处理,但是无论我尝试什么,我似乎都不会导致它。(我传递了一个完全没有意义的非url字符串,它仍然没有出现,我只是得到了一个空响应)
我知道android开发人员参考文件描述了:
当程序试图从不正确的规范创建URL时,将引发此异常。
我想知道如何创建/提供这样一个不正确的规范。
这就是我要执行的代码
try {
HttpData data = request.composeHttpData();
//URL url = new URL(composeUrl(data));
URL url2 = new URL("mydomain:-2/invalidPort");
HttpsURLConnection conn = (HttpsURLConnection) getHttpClient().open(url2);
conn.setRequestMethod(data.getMethod());
//authentication
addAuthentication(conn);
//post body
if (data.getMethod() == POST) {
conn.setDoOutput(true);
data.writePostBody(conn.getOutputStream());
conn.getOutputStream().close();
}
if(conn.getResponseCode() == HttpURLConnection.HTTP_OK) {
response.consumeResponse(conn.getInputStream());
}
response.setResponseHttpCode(conn.getResponseCode());
} catch (MalformedURLException e) {
e.printStackTrace();
throw new Error("Malformed URL encountered");
} catch (IOException e) {
e.printStackTrace();
} finally {
return response;
}当我尝试调试代码时,它似乎从Url实例化跳到返回语句。
发布于 2013-12-23 17:27:59
传递小于-1的端口号。
URL url = new URL("http://mydomain:-2/invalidPort");发布于 2013-12-23 17:15:43
怎么样
throw new MalformedURLException("Testing!");https://stackoverflow.com/questions/20748083
复制相似问题