{"id":27734,"date":"2021-05-23T10:44:00","date_gmt":"2021-05-23T07:44:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=27734"},"modified":"2021-10-18T04:10:08","modified_gmt":"2021-10-18T01:10:08","slug":"como-adicionar-login-oauth-do-twitter-em-um-site-com-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/como-adicionar-login-oauth-do-twitter-em-um-site-com-php\/","title":{"rendered":"Como adicionar login OAuth do Twitter em um site com PHP"},"content":{"rendered":"<p>J\u00e1 se foi o tempo em que um usu\u00e1rio precisava preencher o formul\u00e1rio de registro, receber um e-mail com um link de ativa\u00e7\u00e3o e, em seguida, ativar sua conta. Sites sociais populares como Google, LinkedIn, Twitter fornecem suas APIs por meio das quais os usu\u00e1rios podem fazer login em seu site. Isso economiza tempo para usu\u00e1rios e desenvolvedores e adiciona uma melhor experi\u00eancia do usu\u00e1rio. Neste artigo, estudamos a adi\u00e7\u00e3o de login OAuth do Twitter em um site usando PHP.<\/p>\n<p>Voc\u00ea tamb\u00e9m pode querer ler nossos artigos:<\/p>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-adicionar-o-login-do-google-oauth-a-um-site-com-php\/\" title=\"Como adicionar o login do Google OAuth a um site com PHP\" >Como adicionar o login do Google OAuth a um site com PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-implementar-login-com-linkedin-em-site-com-php\/\" title=\"Como adicionar login com LinkedIn em site com PHP\" >Como adicionar login com LinkedIn em site com PHP<\/a><\/li>\n<\/ul>\n<h3>Obtenha credenciais do Twitter<\/h3>\n<p>Sempre que quiser integrar APIs de login social, voc\u00ea precisar\u00e1 obter suas credenciais de API. No Twitter, primeiro voc\u00ea precisa criar seu aplicativo e, em seguida, obter suas chaves.<\/p>\n<ul>\n<li>Acesse a <a href=\"https:\/\/dev.twitter.com\/apps\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">conta de desenvolvedor<\/a> do <a href=\"https:\/\/dev.twitter.com\/apps\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Twitter<\/a> e crie um novo aplicativo.<\/li>\n<li>Preencha os campos obrigat\u00f3rios, como o nome e a descri\u00e7\u00e3o do aplicativo.<\/li>\n<li>Coloque o dom\u00ednio do seu site no campo Site.<\/li>\n<li>Defina o URL de retorno como <code>YOUR_DOMAIN_URL\/index.php<\/code>.<\/li>\n<li>Depois de se registrar, copie as credenciais do aplicativo (Chave e Segredo do Consumidor) exigidas nas pr\u00f3ximas etapas.<\/li>\n<\/ul>\n<p>Conforme configuramos o URL de retorno de chamada para <code>index.php<\/code>arquivo, trataremos do c\u00f3digo de redirecionamento neste arquivo. Voc\u00ea pode definir o URL diferente de acordo com seus requisitos.<\/p>\n<h3>Configurar Biblioteca HybridAuth<\/h3>\n<p>Para integrar o login social, sempre recomendo usar <a href=\"https:\/\/hybridauth.github.io\/index.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">HybridAuth,<\/a> que \u00e9 uma biblioteca PHP de login social de c\u00f3digo aberto. Usando esta biblioteca, pode-se facilmente adicionar login social ao seu aplicativo. Voc\u00ea n\u00e3o precisa co\u00e7ar a cabe\u00e7a com a documenta\u00e7\u00e3o da API. Basta pegar suas credenciais e HybridAuth far\u00e1 o resto para voc\u00ea.<\/p>\n<p>Crie um <code>composer.json<\/code>arquivo e adicione o c\u00f3digo abaixo nele.<\/p>\n<pre><code>{\n\u00a0\u00a0\u00a0\u00a0\"require\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"hybridauth\/hybridauth\": \"~3.0\"\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Em seguida, execute o comando abaixo que instalar\u00e1 a biblioteca HybridAuth em seu aplicativo.<\/p>\n<pre><code>composer install<\/code><\/pre>\n<p>Crie um <code>config.php<\/code>arquivo e escreva o c\u00f3digo abaixo nele. Tamb\u00e9m estamos adicionando credenciais do Twitter no arquivo de configura\u00e7\u00e3o.<\/p>\n<pre><code>&lt;?php\nrequire_once 'vendor\/autoload.php';\n\u00a0\u00a0\n$config = [\n\u00a0\u00a0\u00a0\u00a0'callback' =&gt; 'YOUR_DOMAIN_URL\/index.php',\n\u00a0\u00a0\u00a0\u00a0'keys'\u00a0\u00a0\u00a0\u00a0 =&gt; ['key' =&gt; 'TWITTER_CONSUMER_API_KEY', 'secret' =&gt; 'TWITTER_CONSUMER_API_SECRET_KEY'],\n\u00a0\u00a0\u00a0\u00a0'authorize' =&gt; true\n];\n\u00a0\u00a0\n$adapter = new HybridauthProviderTwitter( $config );<\/code><\/pre>\n<h3>Login OAuth do Twitter no site<\/h3>\n<p>Conclu\u00edmos todas as configura\u00e7\u00f5es b\u00e1sicas. Agora, podemos prosseguir e adicionar o login com a funcionalidade do Twitter no site. Crie um arquivo chamado <code>index.php<\/code>e adicione o c\u00f3digo abaixo a ele.<\/p>\n<pre><code>&lt;?php\nrequire_once 'config.php';\n\u00a0\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0$adapter-&gt;authenticate();\n\u00a0\u00a0\u00a0\u00a0$userProfile = $adapter-&gt;getUserProfile();\n\u00a0\u00a0\u00a0\u00a0print_r($userProfile);\n\u00a0\u00a0\u00a0\u00a0echo '&lt;a href=\"logout.php\"&gt;Logout&lt;\/a&gt;';\n}\ncatch( Exception $e ){\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage() ;\n}<\/code><\/pre>\n<p>Execute a URL <code>YOUR_DOMAIN_URL\/index.php<\/code>no navegador, o c\u00f3digo no arquivo primeiro verifica se o usu\u00e1rio est\u00e1 autenticado com &#8216;Twitter&#8217; ou n\u00e3o. Caso contr\u00e1rio, ele redireciona para a p\u00e1gina de login do Twitter. O usu\u00e1rio deve completar sua autentica\u00e7\u00e3o. Ap\u00f3s a autentica\u00e7\u00e3o, o usu\u00e1rio volta ao <code>index.php<\/code>. Depois disso, podemos obter as informa\u00e7\u00f5es do usu\u00e1rio usando o m\u00e9todo <code>getUserProfile()<\/code>.<\/p>\n<p>Por fim, <code>logout.php<\/code>devemos desconectar o adaptador (Twitter) que desconecta automaticamente o usu\u00e1rio do aplicativo.<\/p>\n<pre><code>&lt;?php\nrequire_once 'config.php';\n\u00a0\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0if ($adapter-&gt;isConnected()) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$adapter-&gt;disconnect();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo 'Logged out the user';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo '&lt;p&gt;&lt;a href=\"index.php\"&gt;Login&lt;\/a&gt;&lt;\/p&gt;';\n\u00a0\u00a0\u00a0\u00a0}\n}\ncatch( Exception $e ){\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage() ;\n}<\/code><\/pre>\n<p>\u00c9 isso! Espero que voc\u00ea saiba como adicionar um login OAuth do Twitter no site com PHP. Por favor, compartilhe suas id\u00e9ias ou sugest\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste artigo, mostro como adicionar um login OAuth do Twitter a um site com PHP. Usando o login do Twitter, os usu\u00e1rios podem facilmente fazer login no seu<\/p>\n","protected":false},"author":1,"featured_media":20108,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[278],"tags":[848],"class_list":["post-27734","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27734","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=27734"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27734\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/20108"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=27734"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=27734"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=27734"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}