我正在使用 HttpGet 来获取一些图像的内容。它运行良好,但现在我使用的新服务器出现错误,该服务器以以下形式返回图像:
https://amx-sfs.qpass.com/d/da/207b3f6f-4fda-4faf-b7ae-a186530e1245
错误是主机名可能不为空
我进行了研究,似乎当 URL 上出现下划线时错误很常见,但是我的 URL 只包含我认为 URI 接受的连字符。无论如何,我也尝试使用以下方法来转义 url,但没有成功:
HttpGet mHttpGet = new HttpGet(new URI(null,item.getImageUrl(),null));
还有什么可能导致问题,我该如何解决?
提前致谢
编辑
我首先尝试使用 Url 直接使用
new HttpGet(item.getImageUrl())
然后我也尝试了 4 个参数:
HttpGet mHttpGet = new HttpGet(new URI("https","amx-sfs.qpass.com",item.getImageUrl().substring(25),null));
结果相同,即使我调试 HttpGet 对象,并观察它具有的 URI 对象,主机属性似乎 ok (amx-sfs.qpass.com) ,但我仍然得到相同的异常。