Olá pessoal, beleza? Nesta série de artigos, pretendo mostrar como acessar a API do twitter via OAuth utilizando PHP, através de uma classe já pronta para simplificar o acesso.

Nesta primeira parte veremos como registrar a aplicação na área de desenvolvedores do twitter e também como fazer a autenticação do usuário.

1. Registrar aplicação

Para registrar uma aplicação, é preciso entrar na área de desenvolvedores do twitter e clicar em Register an app. Agora basta preencher com as informações da aplicação, em resumo:

  • Application Name: O nome da aplicação;
  • Description: A descrição da aplicação;
  • Application Website: O endereço onde o usuário pode acessar ou ver informações da aplicação. Por exemplo: http://rafaelcouto.com.br/artigos/twitteroauth/;
  • Organization: O autor da aplicação, pode ser o nome da empresa ou seu nome;
  • Application Type: Como a aplicação vai ser na web, selecionamos a opção Browser;
  • Callback URL: Aqui vai o endereço que o usuário será redirecionado após autenticar-se na aplicação. Seguindo nosso artigo devemos apontar para o arquivo callback.php. Por exemplo, minha aplicação fica no seguinte endereço: http://rafaelcouto.com.br/artigos/twitteroauth/, portanto o endereço de callback será: http://rafaelcouto.com.br/artigos/twitteroauth/callback.php. É bom ressaltar que o endereço não pode ser localhost;
  • Default Access type: Selecionamos a opção Read & Write, pois nesse artigo iremos buscar informações (read) e também atualizar informações (write);
  • Application Icon: Selecionamos a imagem da aplicação, você pode selecioná-la mais tarde.

Após registrada a aplicação, na página dos detalhes da aplicação, guarde os seguintes valores: Consumer key e Consumer secret. Eles serão necessário para que o twitter reconheça a aplicação.

2. Classe

Depois de testar algumas classes, optei por escolher a do @abraham, pois, na minha opinião, ela é mais flexível e contém menos bugs, apesar de estar em fase beta enquanto escrevo este artigo. Para baixar a classe basta acessar este link e escolher a última versão. Além da classe, já vem alguns arquivos básicos para autenticação. Se você preferir, pode baixar os mesmo arquivos no final do artigo, pois eles foram levemente adaptados e os comentários traduzidos.

3. Configuração (config.php)

Primeiramente, vamos definir as informações de acesso de nossa aplicação

  • Linha 3 e 4: definimos a Consumer key e Consumer secret da aplicação, para descobrir suas chaves basta ir até os detalhes de sua aplicação na área de desenvolvedores do twitter.
  • Linha 5: definimos a página para onde o usuário será redirecionado após autenticar-se na aplicação. Este endereço deve ser o mesmo que está cadastrado em sua aplicação lá na área de desenvolvedores do twitter.

3. Página inicial (index.php)

Essa é a página principal de nossa aplicação, onde podemos colocar as informações e um botão para acessar a aplicação.

4. Redirecionando para autenticação (redirect.php)

Essa página será responsável por redirecionar o usuário para a página de autenticação da aplicação.

Analisando o código:

  • Linha 10: criamos um objeto da classe passando ao construtor as informações de nossa aplicação que foram definidas na configuração.
  • Linha 13, 16 e 17: através do método getAuthorizeURL() pegamos os tokens temporários necessários para autenticação, depois armazenamos os tokens na sessão, pois utilizaremos eles no callback.
  • Linha 24 e 26: através do método getAuthorizeURL() pegamos a página de autorização passando o token como parâmetro e depois redirecionamos o usuário para esta página.

5. Retornando da autenticação (callback.php)

Essa página será a responsável por receber a resposta da página de autenticação do twitter.

Analisando o código:

  • Linha 10: criamos um objeto da classe e além de passar as informações de nossa aplicação, definimos os tokens temporários que estão na sessão.
  • Linha 13 e 16: através do método getAccessToken() pegamos os tokens que, finalmente, vão permitir que o usuário permaneça autenticado, perceba que passamos como parâmetro o verificador que é retornado pelo twitter. Depois salvamos o token de acesso na sessão para podermos validá-lo em outras páginas.
  • Linha 25: se tudo ocorreu bem até aqui, redirecionamos o usuário para a página principal de nossa aplicação.

5. Verificando (app/painel.php)

Nas páginas de nossa aplicação, basta verificar se o usuário está autenticado:

  • Linha 10 e 12: Se os tokens de acesso não estiverem definidos, ou seja, o usuário não se autenticou, redirecionamos para página clearsessions.php que será explicada adiante.
  • Linha 15: armazenamos os tokens da sessão em um vetor para simplificar o acesso.
  • Linha 18: finalmente, criamos o nosso objeto final passando as informações da aplicação e os tokens de acesso. Com esse objeto podemos acessar as informações do twitter do usuário autenticado como seus tweets, followers, friends, mentions, etc. Podemos também, seguir alguém, enviar um tweet, enfim, todas as funcionalidades disponíveis na API do twitter.

6. Finalizando sessão (clearsessions.php)

Por fim, este arquivo é responsável por finalizar a sessão do usuário autenticado, redirecionando ele para a página de autenticação de nossa aplicação.

7. Concluindo

Bom pessoal, o objetivo desta primeira parte foi concluído. Na próxima etapa vamos começar a “brincar” com as funcionalidades da API. Creio que está primeira parte de autenticação seja a que está confundindo mais o pessoal, pois antes não era necessário todos esses processos.

Download dos arquivos

Espero que vocês tenham entendido. Até breve.
Abraços.

Acessando API do twitter via OAuth com PHP | Parte 2

Compartilhe
Share on Facebook1Share on Google+0Tweet about this on TwitterPin on Pinterest0Email this to someone