首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从action创建者正确访问error对象(来自后台)?

从action创建者正确访问error对象(来自后台)的方法取决于使用的前端框架或库。一般情况下,后台返回的错误信息会包含在响应的数据中,可以通过以下步骤来访问error对象:

  1. 在action创建者中发起后台请求,并在请求中处理错误。根据具体的前端框架或库,可以使用fetchaxios等工具发送异步请求。
  2. 在请求的回调函数中,通过判断响应的状态码来确定请求是否成功。一般来说,状态码为2xx表示成功,而4xx或5xx表示错误。
  3. 如果请求失败,可以从响应的数据中获取错误信息。根据后台返回的数据格式,可能需要使用response.dataresponse.body来访问数据。
  4. 将错误信息存储在action的payload中,以便在后续的reducer中处理。可以通过在action中定义一个error属性来存储错误信息。

以下是一个示例代码,展示了如何从action创建者中访问后台返回的error对象:

代码语言:txt
复制
import axios from 'axios';

// action创建者
export const fetchData = () => {
  return (dispatch) => {
    axios.get('/api/data')
      .then((response) => {
        // 请求成功
        dispatch({
          type: 'FETCH_SUCCESS',
          payload: response.data
        });
      })
      .catch((error) => {
        // 请求失败
        dispatch({
          type: 'FETCH_ERROR',
          error: error.response.data
        });
      });
  };
};

// reducer
const initialState = {
  data: null,
  error: null
};

const reducer = (state = initialState, action) => {
  switch (action.type) {
    case 'FETCH_SUCCESS':
      return {
        ...state,
        data: action.payload,
        error: null
      };
    case 'FETCH_ERROR':
      return {
        ...state,
        data: null,
        error: action.error
      };
    default:
      return state;
  }
};

在上述示例中,FETCH_ERROR action的error属性存储了后台返回的错误信息。在reducer中,可以根据需要对错误进行处理,例如显示错误提示或进行其他操作。

请注意,以上示例中的代码是基于axios库和Redux状态管理库的假设。实际上,具体的实现方式可能因使用的框架或库而有所不同。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

xwiki开发者指南-最佳实践

因为放Java可以通过IDE方便地调试代码,并可以编写单元测试用来自动测试。一般来说它更容易维护。 一般来说,尽量少在wiki页面写一些脚本,因为这会让他们难以维护。...#end 'if'判断为不存在,XWiki可以提取1 User Sheet为标题,当访问sheet页面时,这是适当的标题,而不是直接显示一些错误信息。...当对non-Javascript UI界面使用xredirect处理错误 当使用Javascript编写一个UI界面时,AJAX负责转发你的action后台服务来响应成功或者失败,然后在同一页面展示结果...换句话说,当你使用这种方式来执行你的action导致服务抛出一个错误时,你如何处理这种情况?...一个简单的代码用于后台服务处理错误: #handleRequest($success) #if ($success)  #if ($request.action == 'get' || $request.xpage

79910

剥开比原看代码15:比原是如何转帐的

由于上面展示的操作还是有点多的,所以我们还是按之前的套路,先把它分解成多个小问题,一一解决: 图1中,转帐界面是如何把转帐数据提交到后台的? 图1中,后台如何接收到转帐数据并执行转帐操作的?...图2中,前台是如何拿到后台的数据并展示出来的? 图3中,前台是如何拿到后台的数据并展示出来的? 今天的文章,我们主要是研究前两个问题,即跟图1相关的逻辑。...图1中,转帐表单是如何把转帐数据提交到后台的? 由于是前端,所以我们要去从前端的代码库中寻找。...图1中,后台如何接收到转帐数据并执行转帐操作的? 由于在图1中前端一共访问了3个不同的后端接口,所以在这里我们就需要依次分开讨论。...,把生成的对象返回给前端。 那么,这个接口/build-transaction到底是做什么的呢?通过上面我分析,我们可以知道它有两个作用: 一是检查各参数是否正确

54820

安卓应用安全指南 4.5.2 使用 SQLite 规则书

例如,即使正确设置了文件访问权,如果 DB 文件位于无法设置访问权的位置,则任何人可以访问 DB 文件,例如, SD 卡。 如果它位于应用目录中,如果访问权限设置不正确,它最终将允许意外访问。...以下是正确分配和访问权限设置的一些要点,以及实现它们的方法。 为了保护数据库文件(数据),对于位置和访问权限设置,需要执行以下两点。...对于如何使用,请参阅“4.5.1.1 创建/操作数据库”的具体使用方法。...MODE_PRIVATE只有创建者应用可以读写 MODE_WORLD_READABLE创建者应用可以读写,其他人只能读 MODE_WORLD_WRITEABLE创建者应用可以读写,其他人只能写 4.5.2.2...内容供应器存在一些优点,不仅从安全的角度来实现对 DB 的访问控制,而且设计角度来看, DB 纲要结构可以隐藏到内容中。

75320

异步JS中的Web Workers

因此 Workers 是不能访问 DOM(窗口、文档、页面元素等等)的. 2、Web Wokers 通过使用 Web Workers,Web 应用程序可以在独立于主线程的后台线程中,运行一个脚本操作。..., 可以向其他创建者收发信息, 我们可以直接使用Web Workers API 的 Worker 构造函数创建实例, 所有Worker必须与其创建者同源. 1、示例 下面示例包含Worker的基本API...Self来访问, 例如 self.location 会输出: 三、Shared Workers 其也是 Web Workers API 的一种共享线程, 说他共享是因为他可以几个浏览上下文中访问, 例如几个窗口...下面主要对如何使用 SharedWorker 是进行多页面通信示例, 这里创建两个html页面: // index.js, 做加法运算 const add = document.querySelector...他们还将允许访问推送通知和后台同步 API.[MDN解释] 简单理解, 其实就是有一个独立于当前网页线程的后台线程, 在网页发起请求时进行代理,并缓存相关文件, 以便用户可以进行离线访问.

1.5K20

使用vue-cli创建项目登陆页面

后台交互 3.1 引入axios axios是vue2提倡使用的轻量版的ajax。它是基于promise的HTTP库。它会浏览器中创建XMLHttpRequests,与Vue配合使用非常好。...login.action'; //注意数据是保存到json对象的params属性 axios.get(url, { params: { userNo: this.userNo, userPwd...(error); }); 输入的测试账号和密码均正确,使用get发送请求获取的响应为“密码正确”,但post方式发送的请求获取的响应为“密码不正确”!...在BaseAction中加入一个方法,该方法request payload中获取json数据,并转化为指定的类。...3)将action中的配置修改为自己的后台服务配置 export default { 'SERVER': 'http://localhost:8080/webserver', //服务器 'SYSTEM_USER_DOLOGIN

1.2K60

云开发实践

CDN、静态托管等能力(Serverless 化),可用于开发多种端应用(小程序,公众号,Web 应用,Flutter 客户端等,后续会陆续支持 iOS 和 Android 等移动应用开发),达到一站式后台服务构建多端应用...也可以设置定时器,定时触发 具体看官方文档 鉴权 官方文档 用户身份鉴权(/验证)后,才有权去调用我们的接口(/云函数),才能获取到数据库里的数据;也便于用户访问记录的收集和分析。...ticket生成参考官方文档 token生成直接用jsonwebtoken 增删查改 后台系统,最多的页面就是各种表格、表单,最多的接口就是增删查改。...action) { return baseModel.errorParams; } let result: any = baseModel.error(); switch...({ msg: 'action error' }); } return result; }; dao层放的数据库操作 todo: 入参统一格式化 装饰器;count获取优化 前端 首先全局安装我的个人前端脚手架

1.1K50

Vuex 之单元测试

对于该测试,我们不关心 fullname 来自何方,组件渲染正常就行。...请记住,我们要验证: 正确action 被 dispatch 了 payload 是正常的 it("dispatches an action when a button is clicked", async...而后我们断言第一个参数是正确action 处理函数名 testAction、第二个参数 payload 也正确。我们不关心实际发生的 -- 那可以被单独地测试。...本次测试的目的就是简单地验证单击一个按钮会 dispatch 正确的带 payload 的 action。 使用真实的 store 或 mock store 全凭个人喜好。都是正确的。...5.4 - 测试一个 Namespaced Action (或 Mutation) 第三个也是最终的例子展示了另一种测试一个 action 是否被以正确的参数 dispatch (或是 mutation

3.3K20

在线文档的网络层开发思考--职责驱动设计

之前有整理过《在线文档的网络层设计思考》一文,其中有较完整地介绍了网络层的一些职责,包括:校验数据合法性本地数据准确的提交给后台:包括有序递交和按序升版协同数据正确处理后分发给数据层:包括本地未递交数据与服务端协同数据的冲突处理和协同数据的按序应用在最初的想法中...职责驱动设计于 1990 年构想,是对象视为数据+算法到将对象视为角色+职责的转变。...我们称这个对象类叫“信息专家”。创建者创建者帮助我们创建新对象,它决定了如何创建这些对象,比如使用工厂方法和抽象工厂。...接入层职责划分上一篇文章中我也有介绍,在线文档中后台获取的数据到前端的展示,大概可以这么进行分层:其实当我们在给系统分层、分模块的时候,很多时候都会根据职责进行划分,比如在这里我们划分成了:网络层:负责与服务端的数据提交...,发送数据控制器不仅需要将数据提交到连接层(服务端),也需要关注最终提交成功还是失败;接受数据控制器不仅需要接收来自连接层(服务端)的数据,还需要根据数据的具体内容,确保将数据正确地传递给业务侧。

26650

这几项超好用的云开发扩展能力,别说你还不知道!

目前有图片处理、原图保护、跨域访问设置、样式预设等功能。...{ console.log(JSON.stringify(err, null, 4)); }} 通过上述代码,我们可以得出以下简略步骤: 1、图片需要上传到云存储上,获取 fileID 2、 ...1、通过 fileID 获取图片的临时地址(需要安装图象处理扩展,并开启所有人可读、创建者读写权限) 2、通过在图片链接后面拼接 rule 即可得到所需要的图片。...faceReq.from_json_string(query_string); // 进行人脸识别 return new Promise((resolve, reject) => { // 通过client对象调用想要访问的接口...,需要传入请求对象以及响应回调函数 client.DetectFace(faceReq, function (error, response) { // 请求异常返回,打印异常信息

1.3K51

freeCodeCamp | Front End Development Libraries | 笔记

换句话说,Action 创建者创建表示 Action 事件的对象。 定义一个名为 actionCreator() 的函数,该函数在调用时返回 action 对象。...调用 store.dispatch() 并传递 Action 创建者返回的值会将操作发送回 store。...回想一下,Action 创建者返回一个对象,该对象具有指定已发生的 Action 的类型属性。 然后,该方法将操作对象调度到 Redux 存储区。...换句话说,Action 创建者创建表示 Action 事件的对象。 定义一个名为 actionCreator() 的函数,该函数在调用时返回 action 对象。...回想一下,Action 创建者返回一个对象,该对象具有指定已发生的 Action 的类型属性。 然后,该方法将操作对象调度到 Redux 存储区。

51710

通过重建Hosting系统理解HTTP请求在ASP.NET Core管道中的处理流程:采用管道处理请求

WebHostBuilder是WebHost的创建者,我们调用它的Build方法创建相应的WebHost。...那么在这个过程中,通过调用Configure方法注册到WebHostBuilder上的委托对象(委托类型为Action)将用于管道的定制。...总的来说,ASP.NET Core管道由WebHost在启动的时候构建,WebHostBuilder则是后者的创建者,下图揭示了三者之间的关系。 ?...请求处理管道的角度来讲,注册这个委托对象的目的在于对构建的管道进行定制,说得更加具体一点,我们利用这个类型为管道注册需要的中间件。...如下面的代码片段所示,我们除了按照如上的方式调用扩展方法UseMvc注册了支撑MVC框架的中间件(实际上是一个实现路由的中间件)之外,我们还通过调用其它的扩展方法注册了相应的中间件实现了对静态文件的访问

1.4K80

七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL

HeaderFooterFilter会确保页眉和页脚数据能够正确传递到ViewModel中,AdminFilter限制非管理员用户的访问。 3.创建上传View 创建以上Action方法的View。...运行 会在C盘中创建“Error”文件夹,存放一些error文件。 关于实验30 当异常出现后,Error View 是如何返回响应的?...最好的答案是“执行Action 方法”,但仍存在疑问:对于一个特定的URL请求,如何确定控制器和action 方法。...已定义的路径会在请求周期中确定执行的是正确的控制器和action 方法。如果使用 route.MapRoute创建了多个路径,那么内部路径的定义就意味着创建Route对象。...调用Action 方法 每个控制器都有与之关联的 ControllerActionInvoker对象。在执行方法中ControllerActionInvoker对象调用正确action 方法。

3.9K100

行为设计模式及其在JVM中的应用

在上篇文章中我们说到创建者设计模式。 现在我们来看看行为设计模式。 这些模式关注我们的对象如何相互交互或者我们如何与它们交互。...JVM实例 这种模式的一个非常常见的例子是 Swing 中的 Action 类: Action saveAction = new SaveAction(); button = new JButton(saveAction...我们使用它来编写对某些元素进行任意迭代的函数,而不考虑它们来自何处。...当我们的 UI 框架呈现这个组件时,它将保证所有三个都以正确的顺序被调用。...访问者模式 访问者模式允许我们的代码以类型安全的方式处理各种子类,而无需求助于 instanceof 检查。 对于我们需要支持的每个具体子类,我们将有一个访问者接口和一个方法。

96420

salesforce lightning零基础学习(十) Aura Js 浅谈三: $A、Action、Util篇

Action Action类通常用于和apex后台交互,设置参数,调用后台以及对结果进行处理。... config): 为这个Action设置一组参数,这组参数的名称应该和后台apex中的参数名称一致; 3.getName ():获取Action的Name。...比如 var action = component.get("c.functionName"); 则此函数返回functionName; 4.getReturnValue ():获取Actionserver...端返回的response; 5.isBackground (): 判断当前的action在队列中是前台执行还是后台执行,后台执行返回true,前台返回false; 6.getError ():返回一组错误信息...valid包括:非DOM元素/非浏览器类/非Array/非error/非string/非number. 8. isUndefined (Object obj):判断对象是否为undefined; 9.

1.4K20
领券