(PECL yar >= 1.0.0)
Yar_Server::__construct â CrĂ©e un serveur RPC
Crée un serveur Yar HTTP RPC. Toutes les méthodes publiques de
executor sont enregistrées comme services RPC.
executorTout objet dont les mĂ©thodes publiques devraient ĂȘtre exposĂ©es comme services RPC. Les mĂ©thodes protĂ©gĂ©es et privĂ©es, ainsi que les mĂ©thodes dont le nom commence par un tiret bas, ne sont pas exposĂ©es.
L'exécuteur peut optionnellement définir deux méthodes magiques protégées, reconnues par Yar_Server::handle() et jamais exposées comme points d'entrée RPC :
protected function __info(string $markup):
string â depuis Yar 2.3.0. AppelĂ©e lorsque la page
d'information du service est demandée ; elle reçoit le contenu de
la page que Yar aurait sinon affichée, et si elle retourne une
chaßne de caractÚres, cette chaßne est envoyée au client à la place. Voir
Yar_Server::handle().
protected function __auth(string $provider, string
$token): bool â depuis Yar 2.3.0. AppelĂ©e au tout
dĂ©but de chaque requĂȘte avec les champs
provider et token de
l'en-tĂȘte de requĂȘte, dĂ©finis par le client avec les options
YAR_OPT_PROVIDER et
YAR_OPT_TOKEN. Retourner exactement
false rejette la requĂȘte ; toute autre valeur de retour la
laisse s'exécuter. Voir
Yar_Server::handle().
Les deux méthodes ne prennent effet que lorsqu'elles sont
protected ; une méthode publique ou privée
portant le mĂȘme nom est ignorĂ©e.
Une instance de Yar_Server.
Exemple #1 Exemple avec Yar_Server::__construct()
<?php
class API {
/**
* Le bloc de documentation est affiché sur la page d'information du service.
* @param string $parameter
* @return string
*/
public function some_method($parameter, $option = "foo") {
return "some_method";
}
protected function client_can_not_see() {
}
}
$service = new Yar_Server(new API());
$service->handle();
?>