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

在React-Admin中扩展JSON Server数据提供程序,以便更新不会在正文中发送ID

,可以通过以下步骤来实现:

  1. 首先,确保你已经安装了React-Admin和JSON Server,并且已经配置好了它们的基本设置。
  2. 创建一个自定义的数据提供程序(DataProvider)来扩展JSON Server。这可以通过创建一个新的文件(例如:jsonServerProvider.js)并使用以下代码来实现:
代码语言:txt
复制
import jsonServerProvider from 'ra-data-json-server';

const extendedDataProvider = (jsonServerProviderOptions, httpClientOptions = {}) => {

  // 扩展create方法,以确保在正文中不发送ID
  const create = (resource, params) => {
    if (!params.data.id) {
      delete params.data.id; // 删除ID字段
    }
    return jsonServerProviderOptions.create(resource, params);
  };

  // 返回扩展的数据提供程序
  return {
    ...jsonServerProvider(jsonServerProviderOptions, httpClientOptions),
    create,
  };
};

export default extendedDataProvider;
  1. 在你的React-Admin应用程序的入口文件中,引入并使用扩展的数据提供程序。可以像这样进行修改:
代码语言:txt
复制
import React from 'react';
import { Admin, Resource } from 'react-admin';
import extendedDataProvider from './jsonServerProvider'; // 引入自定义的数据提供程序
import { PostList, PostEdit, PostCreate } from './posts';

const App = () => (
  <Admin dataProvider={extendedDataProvider('http://jsonplaceholder.typicode.com')}>
    <Resource name="posts" list={PostList} edit={PostEdit} create={PostCreate} />
  </Admin>
);

export default App;

在上面的代码中,http://jsonplaceholder.typicode.com 是你的JSON Server的API地址,可以根据实际情况进行修改。

现在,当你在React-Admin中进行更新操作时,它将不会在正文中发送ID字段,而是从URL参数中获取ID。

这是一个简单的扩展JSON Server数据提供程序的方法,以确保在React-Admin中更新操作不会发送ID字段。关于React-Admin和JSON Server的更多详细信息,请参考官方文档和相关资源。

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

相关·内容

使用.NET8的.http文件和终结点资源管理器

可以文件的请求引用这些变量。3.请求: HTTP 请求的格式为 HTTPMethod URL HTTPVersion。这些请求可以包含请求标头和正文。...我们使用相同的授权令牌和内容类型变量,同时在请求体中提供 JSON 格式的用户数据。4.更新用户信息: 此部分定义了一个 PUT 请求,用于更新特定用户的信息。...我们使用相同的变量构建请求 URL,并在请求体中提供更新JSON 数据。5.删除用户: 最后,此部分定义了一个 DELETE 请求,用于删除特定用户。...REST Client 是一款用于 Visual Studio Code 的扩展插件,它允许开发者和测试人员直接在编辑器中发送 HTTP 请求并查看响应。...通过遵循正确的文件语法并利用编辑器和终结点资源管理器的功能,你可以轻松地创建、发送和查看 HTTP 请求及其响应。这将有助于提高你开发 Web 应用程序时的效率和准确性。

78010

Spring注解篇:@RequestBody详解!

Spring框架通过@RequestBody注解提供了一种简洁而强大的方法来实现这一功能,允许开发者轻松地将请求体数据绑定到Java对象上。...这些转换器负责将请求体JSON、XML等格式的数据转换成Java对象。使用案例分享假设我们需要实现一个用户注册的API端点,客户端通过发送JSON格式的请求体来提交用户信息。...@RequestBody注解用于将请求体JSON数据绑定到User对象上。...测试用例实际开发,可以通过以下方式测试这段代码:启动应用程序:运行main方法,启动Spring Boot应用程序。...updateProduct方法,@RequestBody注解用于接收客户端发送JSON格式的产品详情,并将这些数据绑定到Product对象上。

1.3K21
  • Go 微服务第 9 章:基于 RabbitMQ 和 AMQP 进行消息传递

    “10000” 的时候往硬编码进程序的 “is VIP” 检查方法中发送一条消息: var DBClient dbclient.IBoltClient var MessagingClient messaging.IMessagingClient...main.go 也需要有所更新以便在启动的时候能使用加载并注入到 Viper 里面的配置信息来初始化 AMQ 连接。...更新配置 我们第 8 部分已将 amqp_broker_url 属性添加到了我们的 .yml 配置文件里面,所以这个步骤实际上已经做过了。...我不会在这里介绍每一行代码,毕竟它有些部分跟 “accountservice” 有所重复。我们会将重点放在 我们刚刚所发送的消息的 “消费方式” 上。...腾讯分布式微服务TSF围绕应用和微服务的PaaS平台,提供服务全生命周期管理能力和数据化运营支持,提供多维度应用、服务、机器的监控数据,助力服务性能优化;拥抱 Spring Cloud 开源社区技术更新

    3.4K110

    JavaScript 编程精解 中文第三版 二十一、项目:技能分享网站

    只要客户端确保其可以持续不断地建立轮询请求,就可以信息可用之后,从服务器快速地接收到信息。例如,若 Fatma 浏览器打开了技能分享程序,浏览器会发送请求询问是否有更新,且等待请求的响应。...当 Iman 自己的浏览器中提交了关于“极限降滑独轮车”的对话之后。服务器发现 Fatma 等待更新请求,并将新的对话作为响应发送给待处理的请求。...Fatma 的浏览器将会接收到数据更新屏幕展示对话内容。...为了在对话添加一条评论,可以向诸如/talks/Unituning/comments的 URL 发送POST请求,JSON 正文包含author属性和message属性。...磁盘持久化 技能分享服务只将数据存储在内存。这就意味着当服务崩溃或以为任何原因重启时,所有的对话和评论都会丢失。 扩展服务使得其将对话数据存储到磁盘上,并在程序重启时自动重新加载数据

    1.2K30

    【Restful】你还不懂Restful API规范吗?

    进入正文之前,先带着小伙伴们了解几个名词,源自百度百科。 标题中涉及的核心名词API,restful 扩展 何为API呢?...REST,每一个对象都是通过URL来表示的,对象用户负责将状态信息打包进每一条消息内,以便对象的处理总是无状态的。 Restful API 域名 应该尽量将API部署专用域名之下。...RESTful架构,每个网址代表一种资源(resource),所以网址不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。...POST(CREATE):服务器新建一个资源。 PUT(UPDATE):服务器更新资源(客户端提供改变后的完整资源)。 PATCH(UPDATE):服务器更新资源(客户端提供改变的属性)。...resource_id:资源的id,访问或操作该资源。 query: 查询字符串,为发送给服务器的参数,在这里更多发送数据分页、排序等参数。

    1.5K40

    你不知道的33个令人惊艳的React开发库

    今天的文章,将介绍每个 React 开发人员都应该熟悉的 33 个令人惊叹的 React 库。而且是由其他开发人员经过良好测试和维护的令人惊叹的 React 库。...chakra-ui image.png Chakra UI 是一个简单、模块化且可访问的组件库,为您提供构建 React 应用程序所需的构建块。...react-table image.png React 的轻量级且可扩展数据表。构建和设计强大的数据网格体验,同时保留对标记和样式的 100% 控制。...react-query image.png React 的高性能且强大的数据同步。 React 和 React Native 应用程序获取、缓存和更新数据,而无需触及任何“全局状态”。...React components for Leaflet maps react-admin image.png React-admin 提供最佳的开发人员体验,让您专注于业务需求并构建令人愉悦的用户界面

    33220

    使用Spring Boot设计和实现REST API

    REST端点用于集成应用程序或服务器端向客户端提供服务。本文中,将介绍基于CRUD的SpringBoot来设计和实现REST端点。...这是一个CRUD应用程序,因此控制器将有四种基本方法来支持获取,保存,更新和删除操作。所有这些操作都将适用于客户数据。下面是控制器类的框架。...请注意,此HTTP代码是一个标准代码,表示没有找到任何数据,因此客户端可以理解这一点,而不会在响应正文提供任何额外信息。 200 - 确定:已成功处理请求。 POST 此方法用于创建新数据记录。...409 - 冲突:如果新客户的ID已经存在于数据存储,那么它就是冲突请求。 201 - 创建:所有验证都成功,数据将插入到存储。 PUT 此方法允许用户更新现有数据记录。...此请求的端点是/ customers,数据作为正文的一部分发送,因此不再需要请求参数。

    1.8K30

    Laravel API教程:如何构建和测试RESTful API

    PUT动词的另一个要求是幂等,在这种情况下,基本上意味着您可以发送该请求1,2或1000次,结果将相同:数据的一个更新的资源。...您可以将资源表示多个数据模型(或根本不在数据库中表示),并且模型完全不受用户限制。最后,您将以适合您的应用程序的方式来决定如何构建资源和模型。...迁移和模型(Migrations and Models) 实际编写第一次迁移之前,请确保为此应用程序创建了一个数据库,并将其凭据添加到.env位于项目根目录的文件。...该文章应该有一个标题和一个正文字段,以及创建日期。Laravel通过Artisan-Laravel的命令行工具提供了几个命令,可以通过生成文件并将其放在正确的文件夹来帮助我们。...('get', '/api/articles', [], $headers)->assertStatus(401); } } 重要的是要注意提示,测试期间,Laravel应用程序不会在新的请求上再次实例化

    20.4K20

    探索RESTful API开发,构建可扩展的Web服务

    $_GET['id'] : null; // 如果未提交更新数据或未提供资源ID,则返回错误响应 if (!$data || !...然后,我们从请求的主体获取提交的更新数据,并获取要更新的资源ID。接下来,我们连接到数据库,并准备执行更新操作的SQL语句。我们使用PDO来执行更新操作,以防止SQL注入攻击。...将JWT包含在每个请求: 客户端发送请求时,将JWT包含在请求的Authorization头部。服务器可以解码JWT并验证用户的身份。...输出用户提供数据到网页时,应使用合适的编码方式来转义特殊字符。...这样可以确保即使发生异常,也不会导致整个应用程序崩溃。记录错误信息: 当捕获到异常时,我们应该记录错误信息,以便于后续的故障排除和调试。可以将错误信息记录到日志文件或将其发送到监控系统。

    26000

    go语言最快最好运用最广的web框架比较(大多数人不了解的特性)

    会话(Sessions) 支持http会话并准备特定处理程序中使用时。 一些Web框架支持后端数据库来存储会话,因此您可以服务器重新启动之间获得持久性。...渲染:Markdown,JSON,JSONP,XML(Renderer: Markdown, JSON, JSONP, XML) 当框架的上下文为您提供一种简单的方法来轻松地发送/和自定义各种内容类型的响应...支持此功能的框架使您有机会将所有这些数据嵌入到应用程序,表示为[]byte,它们的响应时间也更快,因为服务器可以直接为它们提供服务,而无需物理位置查找文件。...当框架支持此功能时,您可以发送到客户端之前检索或重置或修改写入的状态代码,正文和标题(基于net/http的Web框架,默认情况下这是不可能的,因为无法检索或更改正文和状态代码 书面)。...Gzip 当你路由的处理程序并且你可以更改响应编写器以便使用gzip压缩发送响应时,框架应该处理已发送的头文件,如果发生任何错误,它应该将响应写入恢复正常。

    2.7K40

    超越 Cookie:当今的浏览器端数据存储方案

    我们来看看这些浏览器存储数据的技术。 Cookies Cookie 是由服务器发送或在客户端上设置的信息单位,保存在用户的本地浏览器上。它们会自动附加到每个请求上。...由于 HTTP 是无状态协议,因此 cookie 允许将信息存储客户端上,以便将其他上下文数据传给该服务器。 Cookie 有一些标志,对于提高数据的安全性非常有用。...如果你想保存一个对象或数组,可以保存时调用 JSON.stringify() 并在读取时调用 JSON.parse() 来实现。...通过为 'storage' 事件添加侦听器,你可以另一个选项卡或窗口中更新数据。...在任何一种情况下,如果用户使用隐身,本地存储都不会在会话之间保留数据

    1.2K30

    SpringSpringboot异步处理异常

    现在让我们看一下我们的应用程序管理异常的第一个机制。 @ResponseStatus 的自定义异常 它用应该返回的状态代码()和原因()标记方法或异常类。...server.error.include-message=always 现在响应包含消息。...使用@ExceptionHandler 进行异常处理 它允许方法管理异常。允许使用它注释的处理程序方法具有非常灵活的签名。...我们的例子,该方法将异常类型作为参数并返回一个 ResponseEntity。 它的工作方式是当抛出异常时,处理程序方法将拦截它并返回特定的响应(如果有的话)。...它的操作类似于提供预处理请求和后处理响应功能的过滤器/拦截器。它允许集中处理异常并促进代码重用。 首先,必须删除或注释上一节的异常处理程序方法。

    24910

    使用dotCloud云端部署Django应用程序

    dotCloud的目标是提供一系列不同的独立服务,作为构建模块,来构建应用程序。如果你需要一个数据库,可以直接从他们所支持的许多数据挑选一个。...这使我们不必settings.py文件硬编码用户名/密码和服务器URL,而且也会更安全一些,因为无需源码仓库中出现这些信息。 如何使用dotCloud提供的这个json文件呢?...如果想更好一点,可以自己写一个类似于dotCloud提供的这种json文件,里面包含本地开发时的设置。如果程序找不到dotcloud提供json,它可以查找和加载你的设置。...数据库 大多数应用程序需要一个数据库,这个博客也一样。下面讲述如何设置数据库,以dotcloud上使用博客。以MySQL数据库为例。使用Django框架,需要在settings.py设置数据库。...通常数据库这样做,因为数据库越大,所需的空间和内存就越多。 水平扩展,意味着创建一个以上的服务实例,以便在不同的服务之间分配工作,提供更大的容量。

    3.6K110

    使用 OpenTelemetry Collector 分析日志

    然而,代码层面实现高度结构化的日志记录并不总是可行的。 通过 SigNoz,您可以自动进行一些解析,以识别诸如时间戳、容器 ID、容器名称和可选正文等细节。但是通过相对简单的配置,您可以进一步深入。...步骤 1:将 OpenTelemetry 数据发送到 SigNoz 如果您尚未上报数据,请查看我们关于如何从演示 Node.js 应用程序发送数据的指南,然后回到这里!...它可以与现有的日志记录库一起使用,自动发出的日志中注入跟踪上下文,并通过 OTLP 提供一种简便的方式来发送日志。...在这种情况下,我们不希望我们的 SigNoz 进程变得“太元”,因此我们正在消除由我们自己的容器及其附加服务生成的日志,以便不会混淆您的应用程序数据。...转换放置后,当正文完全匹配“request failed”时,我们现在会获得一个新的属性 接下来,让我们将此工具应用于一个非常严重的情况:我们的数据存在 PII。

    28610

    JavaScript 编程精解 中文第三版 二十、Node.js

    在这样的程序,异步编程通常是有帮助的。 它允许程序同时向/从多个设备发送和接收数据,而无需复杂的线程管理和同步。 Node最初是为了使异步编程简单方便而设计的。...Node 命令 系统安装完 Node.js 后,Node.js 会提供一个名为node的程序,该程序用于执行 JavaScript 文件。...如果你一个包含package.json文件的目录执行npm publish,它将一个包发布到注册处,带有 JSON 文件列出的名称和版本。...本例并没有使用write方法,因为 GET 请求的请求正文中无法包含数据。 https模块中有类似的request函数,可以用来向https: URL 发送请求。...当它有效时,将其扩展以便当其中一个参数是目录时,它将搜索该目录及其子目录的所有文件。 按照你认为合适的方式,使用异步或同步文件系统函数。

    2.1K40

    如何在Ubuntu上使用Webhooks和Slack部署React

    将应用程序代码添加到GitHub存储库后,您将配置Nginx以提供更新的项目文件。然后,您将下载并设置webhook服务器,并配置GitHub以修改代码时与其进行通信。...当您的GitHub存储库中发生配置的事件(如PUSH)时,GitHub将发送一个POST请求,其中包含一个包含该事件信息的JSON正文。...这是webhook实现的一个细节:定义`hooks.json`的所有hoops都将出现在URL`http://your_server_ip:9000/hooks/id`,其中`id`是`hooks.json...,当此脚本执行时,构建目录将更新,Nginx将自动提供新文件。...可以扩展本教程的系统,因为webhook服务器是模块化的,可以配置为与其他应用程序(如GitLab)一起使用。如果通过JSON配置webhook服务器太多,您可以使用Hookdoo构建类似的设置。

    8.7K20

    AngularDart4.0 英雄之旅-教程-08HTTP 顶

    注册HTTP服务 应用程序可以使用BrowserClient之前,您必须将其注册为服务提供者。 您应该可以从应用程序的任何位置访问BrowserClient服务。...URL的英雄id标识服务器应该更新哪个英雄。 另外,响应数据是单个英雄对象而不是列表。...更新之前没有丢失。 什么改变了? 当应用程序使用模拟英雄列表时,更新直接应用于单个应用程序范围的共享列表的英雄对象。 现在,您正在从服务器获取数据,如果您希望更改持续存在,则必须将其写回服务器。...put()请求体是通过调用JSON.encode获得的英雄的JSON字符串编码。 正文内容类型(application / json)在请求头中被标识。...您将HeroService扩展为支持post(),put()和delete()方法。 您更新了组件以允许添加,编辑和删除英雄。 您配置了内存的Web API。 您了解了如何使用Streams。

    11K30

    Java 11 中新的 HttpClient API概览

    可以为特定的 HTTP 方法配置它并附加正文(如果有)。 HttpResponse 描述来自 Web 服务器的响应。它在提交请求时由 HttpClient 返回。...实际用例 事不宜迟,让我们看一些例子: 对于此演示,SpringBoot REST 应用程序将公开一个 允许列出/添加/更新/删除客户的端点(位于http://localhost:8080/api/v1...程序输出 [ {"ID":1,"NAME":"JOE SMITH","EMAIL":"JOE.SMITH@GMAIL.COM","DATEOFBIRTH":"2008-01-01"}, {"ID":2,...主体必须填充 JSON 格式的客户数据。BodyPublishers 类提供方便的方法将 java 对象转换为数据流,以便作为请求主体发送。...这意味着除了 id 之外的所有字段都将被更改。对于部分更新,例如仅更新电子邮件,PATCH 方法更合适。

    38620

    MicrosoftWindows Server 2019的重大改进

    Windows Server 2019,Microsoft为其屏蔽虚拟机安全控制改进了弹性和冗余的问题,该Shielded VMs于Windows Server 2016提出。 ?...这两者都是很好的解决方案,但在扩展性和冗余方面受到了限制。 Windows Server 2019新添加的的主机密钥证明提供了基于证书的解决方案,允许组织使用标准证书存储机制存储密钥。...通过故障恢复配置,当分支机构系统尝试向本地HGS服务器进行身份验证并失败时,系统将通过WAN到达主数据中心HGS服务器进行身份验证,以便启动可以继续。这种弹性是可选配置。...代码完整性策略:从Windows Server1709版(2017年9月对Windows Server 2016的更新)开始,微软的Device Guard增强功能提供了示例策略,可帮助组织评估并最终锁定系统...这可以确保恶意软件不会在系统不能识别并发送非标准、不支持或未识别代码的警报的情况下,进入系统并在系统上运行。代码完整性策略将帮助运行Shielded VM保护系统的组织从内到外评估其安全风险。

    1.1K30

    6个最好的Go语言Web框架

    点这里看有哪些大公司使用Go语言来构建他们的服务。 本文提供了所有必要的信息,以帮助开发人员了解使用Go语言开发Web应用程序的最佳选项。。...一些Web框架支持使用后台数据库来存储会话,以便在服务器重启之间获得持久性。 Buffalo 使用 gorrila 会话,这比其他的实现要慢一点点。...渲染器:Markdown, JSON, JSONP, XML… 框架的上下文为你提供了一种轻松地发送和定制各种内容类型的响应结果的简便方法。...支持此特性的框架使你有机会将所有这些数据嵌入到应用程序,表示为 []byte,它们的响应时间也更快,因为服务器可以不用在物理位置上查找文件而直接服务。...当框架支持这一功能时,你可以发送给客户端之前检索,重置或修改的状态代码、正文和头文件(基于net/http的Web框架,默认情况下这是不可能的,因为正文和状态代码写入后无法检索或更改)。

    1.4K10
    领券