我正在使用LinkedIn Javascript API将用户登录到我的应用程序,但是API没有返回电子邮件地址,即使我需要该特定字段的权限。我将API脚本包括如下:
<script type="text/javascript" src="//platform.linkedin.com/in.js">
api_key: API_KEY
scope: r_fullprofile r_emailaddress
</script>
然后在标记中包含Log In按钮:
<script type="in/Login" data-onAuth="onLinkedInAuth">
最后,我有一个函数来添加API响应的回调:
function onLinkedInAuth() {
var fields = ['first-name', 'last-name', 'email-address'];
IN.API.Profile("me").fields(fields).result(function(data) {
console.log(data);
}).error(function(data) {
console.log(data);
});
};
我只得到名字和姓氏,但API不返回电子邮件字段。
参考:https://developer.linkedin.com/documents/profile-fields#email
4条答案
按热度按时间wswtfjt71#
1-请确保您在应用程序www.example.com中设置了电子邮件权限(r_emailaddress)http://developer.linkedin.com/documents/authentication#granting
2-你可以用这个
希望这对你有帮助:)谢谢
uqdfh47h2#
你好,@Ulises Figueroa,可能我来晚了一点,但这就是我如何做到这一点:
首先,在页面顶部的head部分中使用初始脚本标签:
然后,在你的JS文件中,(我已经放置了一个外部JS文件来处理这个API注册/认证),放置以下细节:
最后但并非最不重要的是,在HTML文档中添加以下内容,这可以帮助您启动linkedin auth注册表单的弹出窗口:
上面的设置为我工作。这肯定能帮到你
干杯,祝你有愉快的一天
3yhwsihp3#
执行情况看起来不错。我相信这是个人资料隐私设置的结果。根据linked-in文档:
并非所有字段都可用于所有配置文件。可用的字段取决于您所代表的用户与成员之间的关系、成员选择提供的信息以及他们的隐私设置。不应假设给定成员返回id以外的任何内容。
ej83mcc04#
我发现这种情况只发生在某些LinkedIn帐户上,所以这可能是由于电子邮件的一些隐私设置造成的。我找不到任何参考文件,所以我不得不考虑的情况下,电子邮件字段不可用。