Hello! 欢迎来到小浪资源网!


图床系统CURL请求图片失败:如何正确处理curl未接受图片的IOException?


图床系统CURL请求图片失败:如何正确处理curl未接受图片的IOException?

cURL 请求图片接口报错:如何解决 curl 未选择接受图片的问题?

背景:

工程师在开发一个图床系统时,遇到本地使用 curl 请求后端图片接口时报错的问题。错误信息为:Java.io.IOException: 你的主机中的软件中止了一个已建立的连接。

尝试的解决方案:

  • 判断请求头是否为 curl 开头,如果是则返回不支持 json 格式。

问题:

这种解决方案存在两个问题:

  • curl 无法获取图片。
  • 其他类似 curl 的不接受文件流的请求也会报错。

解决方案:

问题描述混乱不清,因此需要理清问题:

  • 问题 1:错误的真正原因是什么?
  • 问题 2:curl 请求是否都会导致此错误?
  • 问题 3:此错误是否需要特殊处理?
  • 问题 4:如何特殊处理?

回答:

  • 问题 1:根据经验,错误可能是由于 curl 请求中未指定响应文件处理方式。
  • 问题 2:curl 可以模拟任何 http 请求,因此不应该仅根据 curl 来判断。
  • 问题 3:不需要特殊处理,因为异常是客户端断开连接导致的。
  • 问题 4:可以声明一个接口切面,在捕获到 IOException 类型异常后不打印信息。

相关阅读