1

这似乎是一个简单的问题,但我在任何地方都找不到简单的解释。我确定我只是在寻找错误的东西,所以请多多包涵……

如果我使用Twitter REST API(例如)并使用 OAuth 对用户进行身份验证,在初始身份验证后发送 API 请求时,如何向 Twitter 验证我是否拥有适当的凭据?每次我想与 API 通信时,我是否应该提交 AuthToken(通过GET/变量)?POST看起来很简单,但 Twitter API 中没有针对这些方法的“可选”身份验证参数。

更新:

因为我使用 PHP 来访问 Twitter API,所以我偶然发现了这段代码:

$connection = getConnectionWithAccessToken("abcdefg", "hijklmnop");
$content = $connection->get("statuses/home_timeline");

这是否意味着您每次想要访问 API 时都只需进行身份验证?

例如:

In index.php:
    1. authenticate
    2. access desired API methods
    3. Finish loading page

User navigates to page2.php

In page2.php:
    1. authenticate...again
    2. access desired API methods...again
    3. Finish loading page

User navigates to page3.php

In page3.php:
    1. authenticate...again!
    2. access desired API methods...again
    3. Finish loading page

像这样每次都进行身份验证似乎令人沮丧,但似乎有必要。以上是否解释了 OAuth 的要点(更重要的是,一般的身份验证)?

4

1 回答 1

3

OAuth 协议使用access_token类似于 Session ID,当您的用户已经授权到您的站点时,您可以使用access_token该 API 服务器为您提供访问他们的 API。

因此,从技术上讲,您并没有对每个请求进行身份验证,Twitter 仅使用“SessionID”来识别您的进一步请求。

于 2012-06-09T14:04:00.180 回答