Twitter oAuth如何在方案上下文中工作
OAuth的场景“推特先生”
与Twitter认证看作要求的OAuth先生为方向Twitter的先生的房子 。 OAuth的先生只能给你方向,如果你从Twitter先生有权限。 此外OAuth的先生是很健忘,并要求您拨打的Twitter先生问路。 你必须调用Twitter的先生问方向。 他要求你留下你的电话号码,他会尽快回复您。 他得到直接回到你的方向,你去那里。 你敲门,然后推特先生回答,并要求您输入密码,然后他给了你一把钥匙 ,然后关上了门。 现在,您必须使用钥匙打开门,而门是打开的,你可以在和出去,就像你请。 门自锁,所以如果你关上了门,你必须再次用钥匙开门。 如果你丢失了**或者如果Twitter先生从你收回的关键,那么你必须在门再敲,并要求关键。
好。 所以,让我们把这个变成背景下,在这种情况下,先生的OAuth 是OAuth的PHP的Twitter的图书馆 ,微博先生是Twitter应用程序 ,关键是令牌的访问和门后面是Twitter的REST API,微博先生的家。 因此,为了安全地访问Twitter的REST API我们必须:
1.取得权限以问路到Twitter的先生的房子。
这个步骤涉及创建一个Twitter开发应用程序 ,以获得消费者**和消费者秘密(许可问路)。 (您还必须设置访问级别:读,写,如果你想藏汉发布的tweets为获取用户信息)。
2.问的OAuth先生为方向Twitter的先生的房子。
使用两个开发人员密匙,你可以从OAuth的库(Twitter的先生电话号码) 的授权网址 。 然后,您必须重定向到URL您的要求令牌 (调用Twitter的先生)。 你可以指定一个回调的网址或使用开发者应用程序设置指定的回调(其中一个必须被设置为Twitter的先生给你打电话回来的方向)。 那么Twitter的API将使用回调,并送你一个verifcation令牌 。
3.敲开Twitter的先生门。
使用您的verifcation令牌可以请求访问令牌 (在敲门,微博先生的回答和接受你的verifcation代码和手你一把钥匙,他便关上了门)。
4.使用钥匙开门。
我们可以使用令牌来查询Twitter的REST API访问。 此外,它可能是很方便的存储在PHP会话变量令牌的访问(认为门打开的会话,如果会话结束,然后门关闭,你必须再次用钥匙打开一个新的会话)。 现在,我们可以做的事情牢固如发布Twitter或获取用户信息。
一些进一步的思考
Twitter的先生收回的关键 -如果用户“撤销”访问应用程序,那么你必须回去,并再次要求准予使用。
通过存储在会话变量方向节约时间(丢失钥匙) -如果用户清除thier会话(丢失**),那么我们必须请求新的访问令牌。
写下方向节约时间 -我们可以将OAuth凭证存储在数据库中,使我们可以重新使用它们来生成新的访问令牌(从而避免请求允许步骤)。
From: https://www.sitepoint.com//twitter-oauth-works-twitter-context/