使用和生成不记名令牌

不记名令牌使开发者可以更安全地使用 Twitter API,这是 OAuth 2.0 的核心功能之一。 

使用不记名令牌的验证也称为仅应用程序身份验证。不记名令牌是使用 curl 命令之类的脚本生成的一个未指定格式的字节数组。你还可在开发者门户中,通过应用设置的“密钥和令牌”部分获取不记名令牌。有关此功能的更多信息,请查看 OAuth 的官方文档

 

何时使用这些令牌?

需要使用不记名令牌的产品如下:

前提条件

需要一个经过批准的开发者账号并创建一个 Twitter 应用。有了账号和应用后,还需要获取在开发者门户中找到的使用者 API 密钥。请按照以下步骤操作:

  1. 在 developer.twitter.com 上登陆 Twitter 账号。
  2. 导航到 Twitter 应用面板,然后打开要为其生成访问令牌的 Twitter 应用。
  3. 导航到“密钥和令牌”页面。
  4. 你可以在此页面中找到“使用者 API 密钥”和“不记名令牌”。

 

如何生成不记名令牌

你可在“密钥和令牌”的其余部分找到应用的不记名令牌。

对之前从 Twitter 应用获取的以下使用者 API 密钥进行更改后,将以下 cURL 请求复制到命令行中。 请注意,此页面上使用的使用者 API 密钥已停用,因此无法用于实际请求。

  • API 密钥 <API key> 例如 xvz1evFS4wEEPTGEFPHBog
  • API 机密密钥 <API secret key> 例如 L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg
      curl -u "$API_KEY:$API_SECRET_KEY" \
  --data 'grant_type=client_credentials' \
  'https://api.twitter.com/oauth2/token'
    

 

以下示例展示了输入 API 密钥后 curl 请求的显示效果:

      curl -u 'xvz1evFS4wEEPTGEFPHBog:L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg' \
  --data 'grant_type=client_credentials' \
  'https://api.twitter.com/oauth2/token'
    

 

响应如下所示。请注意,该不记名令牌已停用:

{"token_type":"bearer","access_token":"AAAAAAAAAAAAAAAAAAAAAMLheAAAAAAA0%2BuSeid%2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F"}


通过 OAuth 2.0 验证资源时使用的不记名令牌为:

AAAAAAAAAAAAAAAAAAAAAMLheAAAAAAA0%2BuSeid%2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F