{"id":28270,"date":"2021-05-23T10:50:00","date_gmt":"2021-05-23T07:50:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=28270"},"modified":"2021-10-18T03:42:48","modified_gmt":"2021-10-18T00:42:48","slug":"jak-dodac-twitter-oauth-login-w-witrynie-za-pomoca-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pl\/jak-dodac-twitter-oauth-login-w-witrynie-za-pomoca-php\/","title":{"rendered":"Jak doda\u0107 Twitter OAuth Login w witrynie za pomoc\u0105 PHP"},"content":{"rendered":"<p>Dawno min\u0119\u0142y czasy, kiedy u\u017cytkownik musi wype\u0142ni\u0107 formularz rejestracyjny, otrzyma\u0107 e-mail z linkiem aktywacyjnym, a nast\u0119pnie aktywowa\u0107 swoje konto. Popularne serwisy spo\u0142eczno\u015bciowe, takie jak Google, LinkedIn, Twitter, udost\u0119pniaj\u0105 swoje interfejsy API, za pomoc\u0105 kt\u00f3rych u\u017cytkownicy mog\u0105 logowa\u0107 si\u0119 do Twojej witryny. Oszcz\u0119dza to czas zar\u00f3wno u\u017cytkownik\u00f3w, jak i programist\u00f3w oraz zapewnia lepsze wra\u017cenia u\u017cytkownika. W tym artykule przyjrzymy si\u0119 dodawaniu loginu Twitter OAuth na stronie internetowej przy u\u017cyciu PHP.<\/p>\n<p>Mo\u017cesz r\u00f3wnie\u017c przeczyta\u0107 nasze artyku\u0142y:<\/p>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pl\/jak-dodac-logowanie-google-oauth-do-witryny-za-pomoca-php\/\" title=\"Jak doda\u0107 logowanie Google OAuth do witryny za pomoc\u0105 PHP\" >Jak doda\u0107 logowanie Google OAuth do witryny za pomoc\u0105 PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pl\/jak-zaimplementowac-logowanie-za-pomoca-linkedin-w-witrynie-za-pomoca-php\/\" title=\"Jak doda\u0107 login za pomoc\u0105 LinkedIn w witrynie za pomoc\u0105 PHP\" >Jak doda\u0107 login za pomoc\u0105 LinkedIn w witrynie za pomoc\u0105 PHP<\/a><\/li>\n<\/ul>\n<h3>Uzyskaj dane logowania na Twittera<\/h3>\n<p>Za ka\u017cdym razem, gdy chcesz zintegrowa\u0107 interfejsy API logowania spo\u0142eczno\u015bciowego, musisz uzyska\u0107 dane uwierzytelniaj\u0105ce API. Na Twitterze najpierw musisz stworzy\u0107 swoj\u0105 aplikacj\u0119, a potem otrzymasz swoje klucze.<\/p>\n<ul>\n<li>Przejd\u017a do <a href=\"https:\/\/dev.twitter.com\/apps\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">konta programisty Twittera<\/a> i utw\u00f3rz now\u0105 aplikacj\u0119.<\/li>\n<li>Wype\u0142nij wymagane pola, takie jak nazwa i opis aplikacji.<\/li>\n<li>Umie\u015b\u0107 domen\u0119 swojej witryny w polu Witryna.<\/li>\n<li>Ustaw adres URL wywo\u0142ania zwrotnego jako <code>YOUR_DOMAIN_URL\/index.php<\/code>.<\/li>\n<li>Po zarejestrowaniu skopiuj po\u015bwiadczenia aplikacji (klucz i tajny klucz klienta), kt\u00f3re s\u0105 wymagane w kolejnych krokach.<\/li>\n<\/ul>\n<p>Poniewa\u017c ustawimy adres URL wywo\u0142ania zwrotnego na <code>index.php<\/code>plik, b\u0119dziemy obs\u0142ugiwa\u0107 kod przekierowania w tym pliku. Mo\u017cesz ustawi\u0107 inny adres URL zgodnie ze swoimi wymaganiami.<\/p>\n<h3>Skonfiguruj bibliotek\u0119 HybridAuth<\/h3>\n<p>Aby zintegrowa\u0107 logowanie spo\u0142eczno\u015bciowe, zawsze polecam u\u017cywanie <a href=\"https:\/\/hybridauth.github.io\/index.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">HybridAuth,<\/a> kt\u00f3ra jest bibliotek\u0105 PHP typu open source do logowania spo\u0142eczno\u015bciowego. Korzystaj\u0105c z tej biblioteki, mo\u017cna \u0142atwo doda\u0107 logowanie spo\u0142eczno\u015bciowe do swojej aplikacji. Nie musisz drapa\u0107 si\u0119 po dokumentacji API. Po prostu pobierz swoje dane uwierzytelniaj\u0105ce, a HybridAuth zrobi reszt\u0119 za Ciebie.<\/p>\n<p>Utw\u00f3rz <code>composer.json<\/code>plik i dodaj do niego poni\u017cszy kod.<\/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>Nast\u0119pnie uruchom poni\u017csze polecenie, kt\u00f3re zainstaluje bibliotek\u0119 HybridAuth w Twojej aplikacji.<\/p>\n<pre><code>composer install<\/code><\/pre>\n<p>Utw\u00f3rz <code>config.php<\/code>plik i wpisz w nim poni\u017cszy kod. W pliku konfiguracyjnym dodajemy r\u00f3wnie\u017c dane logowania do Twittera.<\/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>Logowanie przez Twitter OAuth w witrynie<\/h3>\n<p>Sko\u0144czyli\u015bmy ze wszystkimi podstawowymi konfiguracjami. Teraz mo\u017cemy \u015bmia\u0142o doda\u0107 login z funkcj\u0105 Twittera na stronie. Utw\u00f3rz plik o nazwie <code>index.php<\/code>i dodaj do niego poni\u017cszy kod.<\/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>Uruchom adres URL <code>YOUR_DOMAIN_URL\/index.php<\/code>w przegl\u0105darce, kod w pliku najpierw sprawdza, czy u\u017cytkownik jest uwierzytelniony przez \u201eTwitter&quot;, czy nie. Je\u015bli nie, przekierowuje do strony logowania Twittera. U\u017cytkownik musi doko\u0144czy\u0107 uwierzytelnianie. Po uwierzytelnieniu u\u017cytkownik wraca do <code>index.php<\/code>. Nast\u0119pnie mo\u017cemy uzyska\u0107 informacje o u\u017cytkowniku za pomoc\u0105 metody <code>getUserProfile()<\/code>.<\/p>\n<p>Na koniec <code>logout.php<\/code>nale\u017cy od\u0142\u0105czy\u0107 adapter (Twitter), kt\u00f3ry automatycznie wyloguje u\u017cytkownika z aplikacji.<\/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>Ot\u00f3\u017c \u200b\u200bto! Mam nadziej\u0119, \u017ce dowiedzia\u0142e\u015b si\u0119 o dodaniu loginu Twitter OAuth na stronie z PHP. Podziel si\u0119 swoimi przemy\u015bleniami lub sugestiami w sekcji komentarzy poni\u017cej.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>W tym artykule poka\u017c\u0119, jak doda\u0107 login Twitter OAuth do strony internetowej z PHP. Korzystaj\u0105c z logowania na Twitterze, u\u017cytkownicy mog\u0105 \u0142atwo zalogowa\u0107 si\u0119 do Twojego<\/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":[277],"tags":[847],"class_list":["post-28270","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-8","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts\/28270","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/comments?post=28270"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts\/28270\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/media\/20108"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/media?parent=28270"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/categories?post=28270"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/tags?post=28270"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}