2017-05-09 98 views
3

我正在尝试将admin-on-rest与api发送204 HTTP响应成功删除时没有正文。如何使用admin-on-rest管理DELETE响应状态码204?

于是就删除我得到错误信息:

REST响应必须包含一个数据关键

我使用jsonServerRestClient,我不知道我怎么会重写此客户端,以便它接受204在删除并重定向到列表?

+0

哦,这是非常喜欢我的情况http://stackoverflow.com/questions/43854617/admin-on-rest-how-to-set-path-for-list-elements 看到答案写的@佩拉克 – Alexey

回答

1

所以,如果我的微不足道的答案转换为评论,写下更多的细节。

你可以编写自己的客户端。它添加到App.js

import customRestClient from './customRestClient' 

创建customRestClient.js并把代码jsonServerRestClient.js 那里功能convertHTTPResponseToREST 您可以添加

console.log(response); 
console.log(type); 
console.log(resource); 
console.log(params); 

,看到response是包含响应代码的对象。 在情况下,您可以通过添加DELETE来编写自己的行为。 我希望它能帮助你

+0

@ExsiDev如果答案有用,请检查答案是否正确。谢谢 – Alexey

0

更新rest客户端中的convertHTTPResponseToREST方法来处理DELETE请求的响应并包含一个数据键(它可以只是一个空对象)。

例如

const convertHTTPResponseToREST = (response, type, resource, params) => { 
    ... 
    switch (type) { 
     case GET_LIST: 
      ... 
     case GET_MANY_REFERENCE: 
      ... 
     case CREATE: 
      ... 

     /* START OF MAGIC */ 

     case DELETE: 
      return { data: { } }; 

     /* END OF MAGIC */ 

     default: 
      ... 
    } 
}; 

我相信成功删除后重定向回列表是默认行为。