Рестлер:Внутренние действия
Вопрос
Есть ли способ выполнить действия REST в середине выполнения действия?Например, если я выполняю GET /index.php/book/1
Я могу получить следующее:
[{
"id" : 1,
"title" : "This is a book.",
"owner_id" : 4
}]
Но я бы хотел, прежде чем возвращать указанный выше объект, выполнить GET /index.php/user/4
поэтому конечный результат:
[{
"id" : 1,
"title" : "This is a book.",
"owner" : {
"id" : 4,
"name" : "John Smith",
"age" : 40
}
}]
Решение
Существует даже простой способ сделать это с помощью Restler, напрямую вызывая другой метод API вместо того, чтобы тратить один вызов на сервер.
class User{
public function get($id, $includeOwner = true){
$result = getUserFromDB($id)
if($includeOwner){
$result['owner'] = $this->get(getOwnerIdFromDB($id),false);
}
}
return $result;
}
ХТХ
Не связан с StackOverflow