如何使用LinkedIn Javascript API作为我自己网站的登录名

How can I use the Linkedin Javascript API as a login for my own website?

本文关键字:网站 我自己 登录 何使用 LinkedIn Javascript API      更新时间:2023-09-26

我想使用LinkedIn javascript API作为登录我的网站的一种方式,因为它似乎比使用OAuth对最终用户友好得多(即:最好使用一个小弹出窗口登录链接)。

如何使用链接返回的信息安全地将用户登录到我自己的网站,使其无法伪造?还是需要提供用户必须输入的额外密码?

代码由两个<script>标签组成。第一个包含对LinkedIn库的引用和 API 密钥的声明。

<script type="text/javascript" src="//platform.linkedin.com/in.js">
    api_key: <LinkedIn API Key>
</script>

第二个标记具有所需的功能。当用户单击"使用LinkedIn登录"按钮时,将调用 liLogin() 函数。在这里,您可以定义应用程序所需的数据范围。

getProfileData() 函数在身份验证后调用,并进行第二次调用以获取请求的数据。如您所见,您可以在响应中声明所需的数据。

<script>
    var liLogin = function() { // Setup an event listener to make an API call once auth is complete
        IN.UI.Authorize().params({"scope":["r_basicprofile", "r_emailaddress"]}).place();
        IN.Event.on(IN, 'auth', getProfileData);
    }
    var getProfileData = function() { // Use the API call wrapper to request the member's basic profile data
        IN.API.Profile("me").fields("id,firstName,lastName,email-address,picture-urls::(original),public-profile-url,location:(name)").result(function (me) {
            var profile = me.values[0];
            var id = profile.id;
            var firstName = profile.firstName;
            var lastName = profile.lastName;
            var emailAddress = profile.emailAddress;
            var pictureUrl = profile.pictureUrls.values[0];
            var profileUrl = profile.publicProfileUrl;
            var country = profile.location.name;
        });
    }
</script>

要获取LinkedIn API 密钥,请转到LinkedIn开发人员。转到"我的应用",然后单击"创建应用程序"。

从马口中:https://developer.linkedin.com/documents/sign-linkedin概述:http://thinlight.org/2011/08/07/using-facebook-and-other-sites-as-user-authentication-system/

我不是肯定的,但我认为你混淆了 Oauth 是什么。有很多用于各种CMS/语言的Oauth插件可以无缝集成(只需一点努力) - 因此最终用户体验是"单击登录"