红色框是创建流和关闭流的操作,蓝色框是判断并且最终接口返回字符串的逻辑,因为OutputStream创建是在判断return之前,所以流没有关闭,在finally中再次关闭流,则不会再走之前的return返回结果,所以导致下载的数据为空。
解决方法:
将创建流的顺序改为return之后,流为null后,则不会走finally里的close方法。即可正常返回字符串。
红色框是创建流和关闭流的操作,蓝色框是判断并且最终接口返回字符串的逻辑,因为OutputStream创建是在判断return之前,所以流没有关闭,在finally中再次关闭流,则不会再走之前的return返回结果,所以导致下载的数据为空。
解决方法:
将创建流的顺序改为return之后,流为null后,则不会走finally里的close方法。即可正常返回字符串。