"Meld u aan met Twitter" met behulp van Zend Framework
Ondanks alle haat twitter op het moment, heb ik uiteengezet om nieuwe creëren van een twitter -gebaseerde applicatie. Dat iemand die meerdere accounts beheert (zowel persoonlijk als voor mijn liefdadigheidswerk) Ik heb nood aan een tool voor ergens dat ik gewoon ben om rond te schrijven (meer van dat in de nabije toekomst ...).
Ik heb gelezen op Zend_Oauth_Consumer en hoe het kan worden gebruikt om toestemming te krijgen voor de interactie met behulp van twitter OAuth . Alles goed en wel, ik heb mijn access key en ik kan vrolijk post weg namens een gebruiker. Er is genoeg van de middelen die er zijn om dit te doen, dus ik zal jullie niet vervelen mensen.
De volgende stap was om mensen in staat om terug te keren naar de website, in te loggen en hun account te wijzigen. Dit is waar ik een klein probleem bereikt. Met behulp van de code voorbeelden op websites betekende dat ik zou twitter heb me vraagt voor de toegang vergunning weer voor elke login, niet goed. Scannen via het kader kon ik niets zien, die me zou toestaan om gewoon verificatie aanvragen. Dat wil niet zeggen dat zijn er niet, maar er leek niet op een authenticatie mechanisme dat kan worden ingeroepen, zonder te weten de toegang token al.
De alternatieven waren om een site op basis van in te loggen uit te voeren of een of andere manier slaan de gebruiker de toegang token op de client (versleutelde natuurlijk). Geen van deze leek me een goede / passende oplossing.
Na een blik op de verzoeken van mijn code die ik wist dat alles wat nodig was was om de URL te wijzigen waarop Zend_Oauth_Consumer omleidingen. Het leek de makkelijkste manier om dit te doen was om de authorizationUrl parameter met de verificatie-URL van Twitter overschrijven. Dit werd gedaan als volgt:
$ Config = array ( 'CallbackUrl' => ... callback-url ... 'SITEURL' => 'https: / / twitter.com / OAuth', 'ConsumerKey' => ... de consument-key ... 'ConsumerSecret' => ... geheime sleutel ... ); $ Consument = new Zend_Oauth_Consumer ($ config); $ Token = $ consument> getRequestToken (); / / Blijven de token voor opslag $ _SESSION ['TWITTER_REQUEST_TOKEN'] = serialize ($ token); $ Consument> setAuthorizeUrl ('https: / / twitter.com / OAuth / verifiëren'); $ Consument> redirect ();
Bij terugkeer naar de toepassing van Twitter verwerken wij de respons zo:
$ Token = $ consument> getAccessToken ( $ _GET, unserialize ($ _SESSION ['TWITTER_REQUEST_TOKEN']) ); echo $ token-> user_id. '::'. $ Token-> screen_name;
Hoe je valideren / opslaan van de authenticatie is aan jou, maar dit moet succesvol uit te voeren een 'teken aan met twitter' systeem.
Als iemand weet van een meer correcte / meer elegante oplossing voor dit zou ik erg geïnteresseerd in het horen. Er lijkt een gebrek aan informatie over 'aanmelden met twitter' met behulp van PHP / Zend Framework op het internet


















































[...] Doet dit met service Twitter en je kunt snel een stukje te zien op dat hier - Meld u aan met behulp van Twitter Zend Framework. Ik gebruik mijn implementatie waar ik de "machtigen URL" als ik niet [...]