当前位置: 首页 > 知识库问答 >
问题:

javascript - axios 如何全局处理抛出的异常?

龙凯
2023-08-08

虽然已经在响应拦截器里做了一些全局处理,最后是通过 Promise.reject 抛出的异常

现在每个接口请求方法都还是得写 try/catch 或者 .catch() 真的好麻烦

有什么比较好的方案吗?

共有1个答案

秦焱
2023-08-08
async function safeRequest(...args) {  try {    const response = await axios(...args);    return [null, response.data];  } catch (error) {    return [error, null];  }}// 使用const [error, data] = await safeRequest('https://api.example.com/data');if (error) {  console.error('请求失败:', error);} else {  console.log('请求成功:', data);}
 类似资料:
  • 我有下面的代码块。我得到的是的catch块没有处理它。有人能告诉我如何处理下面的块抛出的异常吗?

  • 统一错误处理 文档:https://eggjs.org/zh-cn/tutorials/restful.html 自定义一个异常基类 // app / exceptions / http_exceptions.js class HttpExceptions extends Error { constructor(msg='服务器异常', code=1, httpCode=400) {

  • Middleware: 全局异常处理 我们在岩浆的实例其实已经注意到了,compose 的连接方式,让我们有能力精确控制异常。 Koa中间件最终行为强依赖注册顺序,比如我们这里要引入的异常处理,必须在业务逻辑中间件前注册,才能捕获后续中间件中未捕获异常,回想一下我们的调度器实现的异常传递流程。 <?php class ExceptionHandler implements Middleware

  • 问题内容: 如何检测何时在应用程序中的任何地方引发了异常? 每当Java桌面应用程序中的任何地方引发异常时,我都会尝试自动发送电子邮件给自己。我认为通过这种方式我可以更加主动。 我知道只要发生异常,我都可以明确地记录日志并通知自己,但是我必须在所有地方都做,而且我可能(很可能会)错过一对夫妇。 有什么建议? 问题答案: 您可能不想在任何例外情况下寄出邮件。JDK中有很多代码实际上依赖于异常才能正常

  • 我正在使用Spring4和Tomcat。问题是有时我不得不在我的筛选器中抛出一个(自定义的)RuntimeException(控件甚至还没有到达控制器)。问题是,由于我没有抛出tomcat理解的异常,它被转换为500(内部服务器错误)。我相信403禁止会比500好(对于我的定制例外)。我查看了和注释。但只有当控件到达控制器时,这些才起作用。 到目前为止,我在筛选器的中将状态手动设置为403。有没有

  • 有没有办法在泽西进行全局异常处理?与其单个资源具有try/catch块,然后调用一些方法来清理所有要发回客户端的异常,我希望有一种方法可以将其放在实际调用资源的地方。这可能吗?如果是这样,怎么做? 相反,where会向Jersey servlet抛出某种Jersey配置的异常: 有: 其中异常将被抛出到我可以拦截并从那里调用的东西。 这实际上只是为了简化所有Jersey资源,并确保返回给客户机的异