首页
学习
活动
专区
圈层
工具
发布

React 中请求远程数据的四种方法

React 是一个专注的组件库。因此,它对如何请求远程数据没有什么建议。如果要通过 HTTP 请求数据并将其发送到 Web API,可以考虑下面四种方法。...另外,如果你使用的是 GraphQ L,还可以考虑使用 Apollo 之类的其他不错的选择。这篇文章假设你正在调用传统的 REST API。 方式1:内联 这是最简单,最直接的选择。...看一下我们要解决的一些问题: 声明加载状态 声明错误状态 将错误打印到控制台 检查响应是否通过返回 200 response.ok 如果响应正常,将响应转换为 json 并返回 promise 如果响应不正确...service 是最流行的术语,我在下面也讨论了很多好的替代名称,如 client 或 api。 要点是,所有的 HTTP 调用都是通过纯 JavaScript 函数处理的,存储在一个文件夹中。...其思想是这样的:当相关函数一起处理时,更容易一致地处理它们。如果 userService 文件夹中充满了进行 HTTP 调用的函数,那么我可以很容易地确保它们始终如一地这样做。

4.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    React 中请求远程数据的四种方法

    React 是一个专注的组件库。因此,它对如何请求远程数据没有什么建议。如果要通过 HTTP 请求数据并将其发送到 Web API,可以考虑下面四种方法。...另外,如果你使用的是 GraphQ L,还可以考虑使用 Apollo 之类的其他不错的选择。这篇文章假设你正在调用传统的 REST API。 方式1:内联 这是最简单,最直接的选择。...看一下我们要解决的一些问题: 声明加载状态 声明错误状态 将错误打印到控制台 检查响应是否通过返回 200 response.ok 如果响应正常,将响应转换为 json 并返回 promise 如果响应不正确...service 是最流行的术语,我在下面也讨论了很多好的替代名称,如 client 或 api。 要点是,所有的 HTTP 调用都是通过纯 JavaScript 函数处理的,存储在一个文件夹中。...其思想是这样的:当相关函数一起处理时,更容易一致地处理它们。如果 userService 文件夹中充满了进行 HTTP 调用的函数,那么我可以很容易地确保它们始终如一地这样做。

    2.7K30

    如何使用Django构建现代Web应用程序来管理客户信息并在Ubuntu 18.04上进行反应

    构建更复杂的应用程序时可以使用的一些工具包括: React,一个JavaScript框架,允许开发人员为他们的REST API后端构建Web和本地前端。...在本教程中,您将使用React,Django和Django REST Framework构建一个带有单独REST API后端和前端的现代Web应用程序。...因此,我们需要启用跨源资源共享(CORS),以便将来自React的HTTP请求发送到Django,而不会被浏览器阻止。...API视图是处理API请求或调用的函数,而API端点是表示REST系统的接触点的唯一URL。...例如,当用户向API端点发送GET请求时,Django会调用相应的函数或API视图来处理请求并返回任何可能的结果。 我们还将使用序列化器。

    16.1K83

    每个Java开发人员应该知道的五种RESTful客户端代码

    这取决于你想要完成的事情。 如果您只想测试连接性,像curl这样的基于终端的实用程序是一个很棒的RESTful Web服务客户端。如果要检查服务返回给您的JSON,基于浏览器的插件可能更适合。...以下是每个Java开发人员应该知道的五种: 1.Curl Curl是一个基于Unix的实用程序,它使开发人员能够从命令行调用URL并生成有关REST响应结果的信息。...但是,默认Git安装始终包含Bash以发出分布式版本控制系统命令。随着越来越多的Windows用户采用Git和GitHub,越来越多的开发人员可以立即使用curl命令。...所有流行的JavaScript框架和库,例如AngularJS,Ember.js,React和jQuery,都提供了可以简化基于REST的交互的功能。...REST的Chrome扩展程序 如果您无法访问curl并且您不打算编写RESTful Web服务客户端代码,那么您始终可以选择安装将调用基于REST的服务的Chrome或Firefox扩展。

    3.3K30

    React Suspense与Concurrent Mode:异步渲染的未来

    数据加载协调:与React的Context API和Hooks(如useSuspenseResource)结合,可以实现细粒度的数据加载控制。...随着React的不断发展,这些特性会变得越来越重要,特别是在构建复杂、数据驱动的应用程序时。结合使用:Suspense和Concurrent Mode通常一起使用,以实现最佳的用户体验。...简化状态管理与状态库无缝集成:当与MobX、Redux或React自带的Context API结合使用时,Suspense和Concurrent Mode可以帮助更平滑地管理异步状态更新,减少状态同步的复杂性...未来可扩展性框架层面的支持:随着React的持续发展,Suspense和Concurrent Mode的潜力将进一步释放,比如对服务器端渲染(SSR)和客户端渲染(CSR)的更好支持,以及更广泛的API...] = useState(false); const fadeInProps = useSpring({ opacity: isLoaded ?

    78100

    Web 应用开发进化论

    客户端 - 服务器通信 传统的全栈应用程序使用 REST 作为其 API 规范;它采用 HTTP 方法进行 CRUD 操作。...REST API 负责连接客户端和服务器应用程序,而无需使用相同的编程语言去实现。他们只需要提供一个用于发送和接收 HTTP 请求和响应的库。...到目前为止讨论的技术,全栈应用程序将客户端和服务器应用程序分离。两者都通过精心挑选的 API(例如 REST 或 GraphQL)进行通信。...相比之下,后端通常是背后的逻辑:它是读取和写入数据库的逻辑,与其他应用程序交互的逻辑,通常是提供 API 的逻辑。 但是,不要将客户端应用程序始终误认为是前端,而将服务器应用程序始终误认为是后端。...他们选择哪种 API 规范无关紧要,无论是 REST API 还是 GraphQL API,只要与其服务器交互的客户端了解 API 规范即可。

    5.9K10

    TO-do api

    第3章:Todo API 在接下来的两章中,我们将构建一个Todo API后端,然后将其与React前端连接。...初始化创建 任何Django API的第一步始终是安装Django,然后在其之上添加Django REST Framework。 首先在桌面上的代码目录中创建一个专用的todo目录。...Django REST Framework现在将神奇地将我们的数据转换为JSON,从而公开来自Todo模型的id,title和body字段。 我们需要做的最后一件事是配置我们的views.py文件。...image-20200916123638726 如果您返回http://127.0.0.1:8000/api/的列表视图页面,我们可以看到其他信息。...前者是React的默认端口,下一章将在前端使用它。 后者是默认的Django端口。 测试 您应该始终为Django项目编写测试。 前期花费的少量时间将为您节省大量的时间和以后的调试错误。

    5K31

    在 React 应用中获取数据

    为了满足你们的好奇心,它是一个基于 hug 框架 (http://www.hug.rest/)Python 3 的应用,用 Redis 做持久化存储。 API 非常简单。...因为我希望数据一直是最新的,所以,会以轮询的方式通过 REST API 获取远程数据。 但是,初始化数据也非常重要。React 组件的生命周期方法允许你在特定的时间执行你需要的业务逻辑。...数据更新频率 在 componentDidMount() 方法中初始化数据是很合理的,但是,我需要经常更新数据。基于 REST API,只有通过轮询的方式解决。...Quote 服务器非常简单,而且始终都会返回所有的 quotes。 大多数可扩展服务都会提供方法检查 HTTP 中的 if-modify-since 和 eTag 判断数据是否有更新。...state.isFetching 的值更新为 true,当有响应返回的时候就切换回 false: fetchQuotes = () => { this.setState({...this.state

    12.4K20

    Jmix 中 REST API 的两种实现

    为此,Jmix 提供了强大的通用 REST API 功能,支持包括开箱即用的实体、文件、元数据、用户会话的 API 以及经过简单配置就能支持的业务逻辑(服务)REST API。...而使用 DataManager 的一个好处是可以利用 Jmix 的安全机制,控制 API 调用方对实体的访问权限。...下图是 Jmix 服务 API 的流程图: ▲Jmix 服务 API 流程 可以看到,作为应用程序开发者,仅需要编写服务代码。...例如,通过 Postman 调用: ▲Postman 调用服务 API 服务 API 会默认使用 Jmix 的安全机制:API 端口需要使用认证 token 进行访问,而且用户需要有访问 REST API...注意,这里的 URL 与服务 URL 不同,直接使用了控制器中定义的路径: ▲Postman 调用控制器 API 结论 通过上面的代码,我们可以看到,在 Jmix 中使用两种类型的 REST API

    1.9K10

    React 应用架构实战 0x4:模拟 API

    如果我们的应用程序 API 已损坏或未完成,仍应该能够继续开发应用程序的前端部分 适用于快速原型制作 模拟的服务允许我们更快地制作原型应用程序,因为它们不需要任何其他设置,如后端服务器、数据库等 非常适合构建概念证明...它作为一个 Service Worker,拦截所有预定义模拟版本的 API 请求。我们可以像调用真实 API 一样,在浏览器的 Network 标签页中检查请求和响应。...# 浏览器 浏览器版本的模拟 API 可以在应用程序开发过程中用于运行模拟的端点。...服务器版本也适用于在服务器上执行的 API 调用,这在我们的应用程序进行服务器端渲染时非常有用。...# 配置请求处理 然后就可以给应用程序定义处理程序了。正如先前提到的,MSW 中的处理程序是一个函数,如果定义了它,它将拦截任何匹配的请求,不会将请求发送到网络,而是修改它们并返回模拟的响应。

    68930

    使用 React 和 Django REST Framework 构建你的网站

    在我们最近的工作中,构建网站使用的架构是带有 Django REST Framework(DRF)后端的 React 前端。它们是通过在前端使用 axios(前端库)调用后端 API 来交互的。...只要我们提前定义好请求的资源列表(后面单个都简称:endpoint)和返回的数据格式,前端和后端就可以并行的进行开发。...这也使我们可以轻松的为未来的任何项目创建移动端 App,因为它们仍然可以复用后端 API。 在本文的剩余部分,我将介绍如何配置 React 前端和 DRF 后端。...首先创建一个 redux store,用它来保存用户的 token,以便将来进行更多的API调用。...React 组件中的其他地方进行其他 API 调用就很方便了。

    8.3K70

    React Query 指南,目前火热的状态管理库!

    查询函数是用于从源(rest、GraphQL 等等)检索数据的方法。它很简单,一个返回某种数据的函数,可以是简单函数或者大多数情况下是一个 promise。...没错,它提供了许多很好的功能来调试和检查你的 React Query 应用程序,并且它是每个使用 React Query 的开发者的好工具。...权限 每个应用程序都应该处理认证流程;在这篇文章中,你将学习如何使用 React Query 在你的 React 应用程序中构建认证流程。 注册 构建认证流程的第一步是注册操作。...正如你可以看到的,代码非常简单,signUp 方法调用 API 来发布新用户的数据并返回保存在数据库中的用户数据。...null, } } getUser 函数很简单,它提供获取用户信息的 HTTP 请求;如果用户为空,则返回 null,否则调用 HTTP 终点。

    6.6K42

    实战 React 18 中的 Suspense

    在 React 18 中,虽然仍然可以使用useEffect来完成一些事情,如使用 API 接口读取的数据填充状态,但实际上不应该将其用于此类目的。...如果你在应用程序中启用StrictMode,在开发模式下,你将发现使用useEffect会被调用两次,因为现在React会mount 组件、卸载它,然后再次 mount 它,以检查代码是否运行正常。...,然后返回一个名为“read”的函数,稍后我们将在组件中调用它。...不同于习惯中在组件中通过useEffect钩子调用 fetch 的做法,这一次我们要直接在组件开始时(放在任何 hooks 之外),使用我们在包装器中导出的read方法来调用请求,因此我们的Names组件大概是这个样子的...= resource.read(); // rest of the code } 这里所做的是,当调用组件时,read()函数将开始抛出异常,直到完全解析完成;其后,会继续执行其余代码,在此例中也就是继续

    1.2K10

    Salesforce Integration 概览(五) Remote Call-In(远程操作 外部->salesforce)

    发出API调用后,远程客户端应用程序将等待,直到收到来自服务的响应。...–获取组织的元数据 –运行实用程序以执行管理任务 •同步API发出API调用后,远程客户端应用程序将等待,直到收到来自服务的响应。...它的优点包括易于集成和开发,是与移动应用程序和web应用程序配合使用的最佳选择。 •安全执行REST API的客户端必须具有有效的登录名,并获得会话以执行任何API调用。...请求的所有响应主体和HTTP状态都在单个响应主体中返回。整个请求都算作一个符合API限制的调用。...然后,远程系统使用适当的动词生成REST调用(HTTP请求),并处理返回的结果(支持JSON和XML数据格式)。

    3.9K20
    领券