lzhpo / chatgpt-spring-boot-starter

支持OpenAi所有可用的接口,包括但不限于流式输出和Token计算等,可配置多个API-Key、权重、代理、自定义API等诸多功能...
http://www.lzhpo.com
Apache License 2.0
153 stars 30 forks source link

GlobalExceptionHandler中不能捕捉OpenAiException #3

Closed truechuan closed 1 year ago

truechuan commented 1 year ago

初步怀疑是异步导致的,就算在controller的接口try catch也捕捉不到异常

lzhpo commented 1 year ago

emm...你提的issue和我的chatgpt-spring-boot-starter无关喔!

  1. 你的GlobalExceptionHandler是写的@ControllerAdvice注解吗,是的话,处理不了异步异常。
  2. 异步异常不能被try-catch,这是基础啊...

下面是一些处理异步异常的解决办法供你参考:

  1. 实现Spring的AsyncConfigurer接口去处理异步异常。
  2. Future可以手动调用get,然后try-catch住。
  3. CompletableFuture可以用exceptionally,或者whenComplete里面判断异常不为null然后进行处理。
  4. 等等方法...