Twitter OAuth es un protocolo de autenticación que permite a los usuarios conectarse con nuestro WebSite mediante una confirmación previa en Twitter.
En estos días son muchas las Web que usan este método para el registro de usuarios de forma más fácil.
En este tutorial explicaremos detalladamente como lograr implementar esta funcionalidad a nuestro sitio Web.

Paso 1: Crear una aplicación en Twitter.
Para crear una aplicación en Twitter deberán loguearse e ingresar al enlace:
Settings > Connections
En el modulo derecho podremos ver un enlace pequeño para registrar aplicaciones, posteriormente le dan a “Register new application”.

Prestemos atención al formulario Demo.
- Application Name: Este sera el texto que aparecera en el from del Tweet.
- Application Website: El enlace del from en el Tweet.
- Callback URL: Sera la url a donde redireccionara Twitter despues de loguearte.
- Default Access type: Esto servira para interactuar con Twitter desde nuestra Web (Tweetear, seguir a otros, enviar mensajes privados, etc).
Luego del registro exitoso, nos mostraran la configuración que luego necesitaremos para integrar la aplicación con nuestro sitio Web.
Paso 2 : Implementando Twitter OAuth con PHP
Para esto existe una clase que hará más sencillo el proceso, descargaremos la librería aquí.
Ahora abriremos el archivo config.php y colocaremos la información correcta que la encontraremos en la aplicación creada en Twitter.

Para nuestro demo, necesitaremos estos archivos:
- config.php : Archivos de configuración para Loguearse con Twitter.
- OAuth.php : Clase para manejar el protocolo OAuth
- twitteroauth.php : Clase para interactuar con Twitter y el protocolo OAuth.
- callback.php : Proceso que redireccionara a una ruta personalizada.
- redirect.php : Genera una url valida y redireccionara a Twitter para loguearse a nuestro WebSite.
- logout.php : Cerrar sesión en nuestro Website ( no en Twitter.com ).
Estos archivos vienen por defecto en la librería, nuestro trabajo será generar un index que nos verifique el estado del usuario de Twitter, si esta logueado podrá imprimir sus datos, sino pintara un enlace para iniciar sesión.
<?php
session_start();
require_once('config.php');
require_once('twitteroauth.php');
if (empty($_SESSION['access_token']) || empty($_SESSION['access_token']['oauth_token']) || empty($_SESSION['access_token']['oauth_token_secret'])){
header('Location: ./logout.php');exit;
}
$access_token = $_SESSION['access_token'];
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $access_token['oauth_token'], $access_token['oauth_token_secret']);
$content = $connection->get('account/verify_credentials');
print_r($content);exit;
?>
De esta manera podemos loguearnos con una cuenta Twitter en nuestra Web, olvidándonos por completo de llenar registros y validarlos, Twitter hará la validación de credenciales, datos, etc.
Cuando iniciemos una nueva aplicación Web que necesite un registro podemos agregar esta funcionalidad como alternativa para aquellos que dispongan de una cuenta en esta red social.
Más info: Twitter API Wiki / OAuth FAQ
Tags:

Comentarios