2017-05-09 54 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: 
      ... 
    } 
}; 

我相信成功刪除後重定向回列表是默認行爲。