如何使用Javascript获得的OAuth访问令牌进行PHP身份验证


How to Use OAuth Access Token Obtained with Javascript to Authenticate with PHP

我正在为Opera编写一个扩展,它将使用TwitterOAuth API。我知道这是不受欢迎的,但我正在扩展中使用Javascript实现Twitter OAuth。请容忍我,因为我不是OAuth的专业人士。

但我想做的是:一旦用户通过Twitter进行了身份验证,我将使用Opera扩展可用的小部件.首选项对象将访问令牌存储在localStorage中。这是我现在不确定的部分。在扩展中,用户可以发表评论。注释将从扩展发布到服务器上的脚本,服务器将处理注释并将其插入数据库中的表中。

我现在想知道的是,我如何才能确保发布评论的人的用户名是发布评论并在我的扩展中登录推特的用户的真实用户名?

如果我只是从扩展中发送用户名,那么在请求中操作用户名将非常容易,导致将一个带有注释的假用户名插入数据库。

我可以从扩展发送发布评论的用户的访问令牌,服务器会收到带有评论数据的访问令牌。在将注释插入数据库之前,我可以使用从Javascript扩展发送的访问令牌来用PHP检索该访问令牌所代表的用户的Twitter用户名吗?或者访问令牌是在每次对用户进行身份验证时随机创建的,因此不能像这样重复使用?

OAuth Echo是通过API验证Twitter身份的标准方法。

基本流程为:

  1. Extension签署了accounts/verify_credentials请求,但不会将其发送到Twitter
  2. 扩展将已签名的请求发送到服务器
  3. 服务器向Twitter发出请求。如果它成功并返回screen_name,您就知道它是谁