当我尝试使用旧应用程序时,LinkedIn登录返回带有基本配置文件的电子邮件ID,但是当我尝试使用新应用程序时,它仅返回基本配置文件,例如(名字,姓氏等...(,而不是电子邮件ID。
<script type="text/javascript" src="//platform.linkedin.com/in.js">
api_key: XXXXXXXXX
authorize: true
</script>
<script type="text/javascript">
function liAuth(){
window.IN.user.authorize().then(function(){
getProfileData();
});
}
function setLoginBadge(profile) {
if (!profile) {
profHTML = "<p>You are not logged in</p>";
}
document.getElementById("given_name").value =profile.firstName;
document.getElementById("family_name").value =profile.lastName;
document.getElementById("email").value = profile.emailAddress;
document.getElementById("verifyOauthRequestLinkedIn").submit();
}
function onError(error) {
console.log(error);
}
function getProfileData() {
IN.API.Profile("me")
.fields(["id", "firstName", "lastName", "pictureUrl",
"publicProfileUrl","email-address","headline"])
.result(function(result) {
setLoginBadge(result.values[0]);
})
.error(onError);
}
</script>
不再支持 javascript SDK,请参考: [https://developer.linkedin.com/docs/getting-started-js-sdk]
因此,问题是LinkedIN API已更改其服务条款,您无法再获得电子邮件ID等详细信息在此处查看可用字段 [https://learn.microsoft.com/en-us/linkedin/shared/references/v2/profile/basic-profile?context=linkedin/consumer/context]
若要获取完整配置文件权限,必须联系支持人员并验证应用是否提供其他功能