據我所知,Restler自動返回我的方法與HTTP狀態代碼200(OK)的結果,如果我想返回一個錯誤響應我用如何使用Luracast Restler返回HTTP 200 OK以外的積極響應?
throw new RestException(400); // returns HTTP 400 Bad Request
但我怎麼回說的響應, HTTP 201與結果值一起創建?
據我所知,Restler自動返回我的方法與HTTP狀態代碼200(OK)的結果,如果我想返回一個錯誤響應我用如何使用Luracast Restler返回HTTP 200 OK以外的積極響應?
throw new RestException(400); // returns HTTP 400 Bad Request
但我怎麼回說的響應, HTTP 201與結果值一起創建?
header("HTTP/1.1 201 Some response");
應該工作
我打這也和我成功返回手動指出:
return(array('success' => array('code' => 201, 'msg' => 'resulting value')));
如果你想RESTler來爲您處理:
throw new RestException(201, 'resulting value');
但是會在「錯誤」狀態下返回:
{
"error": {
"code": 201,
"msg": "resulting value"
}
}
從RESTLER 3開始,您可以在API Method上方的文檔註釋中設置備用正面響應代碼。例如,下面的Doc註釋設置返回狀態爲204的DELETE路由(只要您不拋出RESTException)
/**
* Delete an Attribute
* @status 204
* @url DELETE {eventTicketId}/registration/{eventTicketRegistrationId}/attribute/{attributeId}
*/
function deleteTicketRegistrationAttribute($eventTicketId,$eventTicketRegistrationId,$attributeId)
{
}
遇到同樣的問題。第一個代碼塊看起來很合理,雖然它是「手動」的。 – igorsantos07