Domanda

C'è un modo per eseguire azioni di riposo nel mezzo dell'esecuzione di un'azione?Ad esempio, se eseguo GET /index.php/book/1 potrei ricevere quanto segue:

[{
    "id" : 1,
    "title" : "This is a book.",
    "owner_id" : 4
}]
.

Ma quello che mi piacerebbe fare è prima di restituire l'oggetto sopra, eseguire un GET /index.php/user/4, quindi il risultato finale è:

[{
    "id" : 1,
    "title" : "This is a book.",
    "owner" : {
        "id" : 4,
        "name" : "John Smith",
        "age" : 40
    }
}]
.

È stato utile?

Soluzione

C'è anche un modo semplice per farlo con il ripostiere chiamando internamente internamente un altro metodo API direttamente invece di sprecare una chiamata al server

class User{
    public function get($id, $includeOwner = true){
        $result = getUserFromDB($id)
        if($includeOwner){
            $result['owner'] = $this->get(getOwnerIdFromDB($id),false);
        }
    }
    return $result;
}
.

HTH

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top