Опитвам се да извлека актуализации на компанията, използвайки API на LinkedIn. Някак си не мога да накарам това да работи. Виждам console.log("On auth"); в конзолата, но след това нищо не се случва. Сякаш спира с тази функция... Няма видими грешки, няма други съобщения на конзолата. Някой има ли идея какво може да не е наред?
Използвам тестовата компания на LinkedIn, която не изисква никакви администраторски разрешения.
Моят код е следният:
<head>
<script type="text/javascript" src="https://platform.linkedin.com/in.js">
api_key: 14characters
onLoad: onLinkedInLoad
authorize: true
</script>
</head>
<body>
<div id="displayUpdates"></div>
<script type="text/javascript">
function onLinkedInLoad() {
IN.Event.on(IN, "auth", onLinkedInAuth);
console.log("On auth");
}
function onLinkedInAuth() {
var cpnyID = 2414183; //LinkedIn's testDevCo
IN.API.Raw("/companies/" + cpnyID + "/updates?event-type=status-update&start=0&count=10&format=json")
.result(displayCompanyUpdates);
console.log("After auth");
}
function displayCompanyUpdates(result) {
var div = document.getElementById("displayUpdates");
var el = "<ul>";
var resValues = result.values;
for (var i in resValues) {
var share = resValues[i].updateContent.companyStatusUpdate.share;
var isContent = share.content;
var isTitled = isContent,
isLinked = isContent,
isDescription = isContent,
isThumbnail = isContent;
if (isTitled) {
var title = isContent.title;
} else {
var title = "News headline";
}
if (isLinked) {
var link = isContent.shortenedUrl;
} else {
var link = "#";
}
if (isDescription) {
var description = isContent.description;
} else {
var description = "No description";
}
if (isThumbnailz) {
var thumbnailUrl = isContent.thumbnailUrl;
} else {
var thumbnailUrl = "http://placehold.it/60x60";
}
if (share) {
var content = "<a target='_blank' href="/bg + link + ">" + title + "</a><br>" + description;
el += "<li><img src='" + thumbnailUrl + "' alt=''>" + content + "</li>";
}
console.log(share);
}
el += "</ul>";
div.innerHTML = el;
}
</script>
</body>
console.log()
в началото наonLinkedInAuth()
регистрира ли се? също onload трябва да бъде -onLoad **A comma-separated list** of the names of Javascript functions that you want the SDK to execute once it has successfully loaded itself.
- person Craicerjack   schedule 05.01.2016onLinkedInAuth()
... - person Meek   schedule 05.01.2016onLinkedInAuth()
не се извиква, така че вашият проблем е с този редIN.Event.on(IN, "auth", onLinkedInAuth);
. Не съм използвал API на Linkedin, така че съжалявам, не мога да помогна повече от това - опитахте ли да използвате различенeventName
, различен от auth - person Craicerjack   schedule 05.01.2016onLoad: onLinkedInLoad, onLinkedInAuth, displayCompanyUpdates
, което внезапно ми дава тази грешка: Не мога да прочета 'стойности' на свойство на undefined, сочещи към този ред:var resValues = result.values;
- person Meek   schedule 05.01.2016var resValues = result.values;
- но все още показва 10-те публикации въпреки тази грешка. Някаква идея какво не е наред с result.values? Документите са тук: developer.linkedin.com/docs/company-pages#company_updates - person Meek   schedule 05.01.2016function displayCompanyUpdates(result)
приема резултатен параметър, но вие не го предавате, когато го извиквате, така чеresult
е недефиниран - person Craicerjack   schedule 05.01.2016displayCompanyUpdates
отonLoad
. Очевидно са били необходими самоonLinkedInLoad
иonLinkedInAuth
. Моля, оставете отговор, тъй като все пак ми помогнахте по пътя да накарам това да работи. Благодаря. - person Meek   schedule 06.01.2016