Componente REST para cakePhp

 

cakePhp, Código

Buenas, acabo de subir un componente RESTfull para cakePhp en mi cuenta de github https://github.com/deldan/RestAndCurl-component-cakePhp

¿Como hacerlo funcionar?

Descargar los dos componentes y guardarlos en la carpeta app/controller/components de tu proyecto cakePhp

Llamalo en el controlador que se necesite, como con cualquier componente

var $components=array('Curl', 'Restclient');

Y crear las llamadas REST

Dejo un pequeño ejemplo de conexión y llamada a la api de 11870.com con estos componentes


//uri REST
$uri = "http://api.11870.com/api/v2/search";


//parametro de busqueda
 $params['q'] = $search;

 //parametro ciudad
 $params['ls'] = $city;
 
//parametro categoria
 $params['category'] = $tipo;

 //params
 $params['fields'] = 'title,summary,link';
 $params['oauth_token'] = '**********************';
 $params['oauth_token_secret'] = '**********************';
 $params['appToken'] = '**********************';

 
 // REST call
 $result = $this->Restclient->get($uri, $params, 'xml');

Componente cakePhp generador de Contraseña aleatorio.

 

cakePhp

Es un componente muy sencillo, pero útil para el típico “he olvidado mi contraseña” en un sistema de usuarios.

Implementación en cake

- en”controller/components” en tu proyecto de cakePhp, añadir un archivo “password.php”.

 class PasswordComponent extends Object {

/**
 * Password generator function
 *
 */
    function generatePassword ($length = 8)
    {
        // inicializa variables
        $password = "";
        $i = 0;
        $possible = "0123456789bcdfghjkmnpqrstvwxyz"; 

        // agrega random
        while ($i < $length) {

            $char = substr($possible, mt_rand(0, strlen($possible)-1), 1);

            if (!strstr($password, $char)) {
                $password .= $char;
                $i++;
            }
        }
        return $password;
    }
}

- En el controlador que vayamos a usar este componente deberemos añadir:
var $components = array(‘Password’);

- Llamaremos a la función:
$this->Password->generatePassword();

- Si guardamos la función en una variable $newpassword, tendremos la nueva password aleatoria.