我尝试使用Sparkle.LinkedIn从LinkedIn API获取摘要和技能字段。 一切正常,我可以阅读标题,名字和姓氏字段,但技能,摘要,行业, DateOfBirth 即使LinkedIn个人资料肯定有,其他字段始终为空。
以下是用户已经过身份验证且我有令牌时使用的代码:
var fields = FieldSelector.For<Person>()
.WithId()
.WithFirstName()
.WithLastName()
.WithEmailAddress()
.WithHeadline()
.WithPictureUrl()
.WithPublicProfileUrl()
.WithSummary()
.WithIndustry()
.WithDateOfBirth()
.WithSkills();
var config = new LinkedInApiConfiguration("api-key", "key-secret");
var api = new LinkedInApi(config);
if(!string.IsNullOrEmpty(error) || !string.IsNullOrEmpty(error_description))
{
Response.Write(error + "<br/>" + error_description);
}
else
{
var redirectUrl = "my-redirect-url";
var userToken = api.OAuth2.GetAccessToken(code, redirectUrl);
var acceptLanguages = new string[] { "it-IT","en-US", };
var user = new UserAuthorization(userToken.AccessToken);
Person profile = api.Profiles.GetMyProfile(user,acceptLanguages,fields);
Response.Write(profile.Headline + "<br/>");
Response.Write(profile.Summary + "<br/>"); //always empty
Response.Write(profile.Industry + "<br/>"); //always empty
Response.Write(profile.PictureUrl + "<br/>"); //always empty
if(profile.Skills!=null) //always null
{
foreach (var sk in profile.Skills.Skill)
{
Response.Write(sk.SkillName.Name + "<br/>");
}
}
Response.Write(profile.Lastname + "<br/>");
Response.Write(profile.DateOfBirth.Year + "<br/>"); //always empty
}
如何检索摘要和技能字段?
答案 0 :(得分:0)
不幸的是我无法评论你的帖子,但我能说的是,这当然不是逻辑顺序错误。快速查看它,我要尝试的一件事是用|| false
替换字段选择器中的所有内容。
我在How to get summary of connections for LinkedIn API using omniauth-linkedin gem找到的一件事是你可能需要比现在更多的许可(我从来没有使用过这个API,所以我不确定)