Я пытаюсь получить обновления компании с помощью LinkedIn API. Почему-то я не могу заставить это работать. Я вижу console.log("При авторизации"); в консоли, но после этого ничего не происходит. Как будто останавливается с этой функцией... Ни видимых ошибок, ни других консольных сообщений. Кто-нибудь знает, что может быть не так?
Я использую тестовую компанию 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=" + 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