2014-09-23 81 views
0

我正在編碼一個小型的寧靜服務器。 我可以使用http適當的響應代碼處理錯誤,並且我可以在響應正文中放置一條錯誤消息。假設某些客戶端試圖訪問http://very/reserved/area沒有所需的特權:在200 OK成功操作後使用http響應標頭定製消息

Status: 401 
Body: You are not allowed to perform this operation 

我想補充一個消息200 - 藏漢OK響應,例如,假設某個客戶編後一些用戶的數據來創建一個新帳戶:

Status: 200 
Body (JSON): { 
    username: 'a fresh added user', 
    email: 'his email address', 
    name: 'his name' 
    etc 
} 

__some_http_header__: 'A new user has been created.' 

我知道我可以

Status: 200 
    Body (JSON): { 
     data: { 
     username: 'a fresh added user', 
     email: 'his email address', 
     name: 'his name' 
     etc 
     }, 
     message: 'A new user has been created.' 
    } 

,但是這正是我試圖避免的。

以這種方式,我可以保持響應數據的輕量級,而無需元數據開銷。

問題:這是一個很好的做法嗎?哪個頭文件適合這個目的?

回答

1

沒有理由不能爲此目的創建標題。

X-Status-Message或類似的東西。

這種做法沒有任何問題。

在這種特殊情況下,雖然主體可以包含剛剛創建的資源作爲200回覆​​的一部分(實際上也沒有什麼錯誤),但實踐是返回一個位置標題和一個指向新資源的鏈接,該表示可以被檢索。

記錄標題落在資源及其表示的外部文檔上。