如何识别独特用户,同时让他们使用LinkedIn登录?

时间:2014-05-05 08:28:24

标签: oauth linkedin

所以我将用户发送到LinkedIn,然后用一个代码将它们发送回redirect_url。我交换了代码以获取访问令牌。如何判断哪位用户已登录?我有一个用户的SQL表:

CREATE TABLE用户(     id SERIAL PRIMARY KEY,     access_token TEXT);

所以我在redirect_url处理我的处理程序,我抓住一个访问令牌,然后看看我的表中哪个用户有该访问令牌?但是访问令牌会改变吗?

我的问题是:一旦用户通过LinkedIn登录并被重定向到我的网址,我如何区分服务器端的不同用户?

1 个答案:

答案 0 :(得分:2)

您必须使用access_token拨打https://api.linkedin.com/v1/people/~:(id,email-address)以获取用户的ID。此ID对于该用户是唯一的。您可以将该Id保存在数据库中,并引用该ID以识别用户。

但是,Linkedin API有一个很糟糕的事情。请记住,如果您更改API密钥(如果有一天您因任何原因决定使用其他API密钥),那么您将无法获得用户的相同“Id”。此ID是特定于API密钥的。所以你无法识别用户是否相同。您也可以保存电子邮件地址,但无论如何都可以由用户更改。

希望这有帮助。