@crayes23

Как проверить соответствие репоста ВКонтакте?

vk.com/dev/wall.getById
Человек вводит ID своего репоста, я хочу проверить что это он сделал репост моей записи.

Например vk.com/durov?w=wall1_593585 и vk.com/pavel_durov_quotes?w=wall-51370128_38085 по запросу

VK.Api.call('wall.getById', {posts: '-51370128_38085', copy_history_depth: 999}, function(r) { 
// code
});


вернёт

response: [{
id: 38085,
from_id: -51370128,
owner_id: -51370128,
date: 1448435117,
post_type: 'post',
text: 'Комментарий Павла по поводу статьи в издании "Секрет Фирмы". #durov #павелдуровИздание «Секрет фирмы» опубликовало рейтинг самых успешных молодых предпринимателей возрастом до 40 лет с российским гражданством. Лидером списка стал основатель «ВКонтакте» и Telegram Павел Дуров.«Секрет фирмы» выстроил рейтинг по уменьшению стоимости доли предпринимателя в его бизнесе. Лидер списка, 31-летний Павел Дуров, целиком контролирует Telegram, который издание оценило в $1 млрд. Сам Дуров полагает, что его компания стоит около $3-4 млрд.На втором месте — 39-летний Иван Таврин, гендиректор «Мегафона» и совладелец «ЮТВ Холдинга», в котором ему принадлежит 50%. Его долю издание оценило в $400 млн.Третье и четвёртое место заняли братья Семён и Ефим Войновы (обоим по 33 года), их доли в разработчике игр Zeptolab оценены в $250 млн. На пятом месте — 38-летний основатель поисковика авиабилетов OneTwoTrip Пётр Кутис ($130 млн).',
copy_history: [{
id: 593585,
owner_id: 1,
from_id: 1,
date: 1448431475,
post_type: 'post',
text: 'Можно ли дать рыночную оценку тому, что не продается?',
attachments: [{
type: 'link',
link: {
url: 'https://vc.ru/p/sf-young-rating-2015',
title: 'Павел Дуров возглавил рейтинг самых успешных бизнесменов России до 40 лет по версии «Секрета фирмы»',
caption: 'vc.ru',
description: 'Издание «Секрет фирмы» опубликовало рейтинг самых успешных молодых предпринимателей возрастом до 40 лет с российским гражданством. Лидером списка стал основатель «ВКонтакте» и Telegram Павел Дуров.',
photo: {
id: 391449072,
album_id: -2,
owner_id: 1,
photo_75: 'http://cs628523.v...0bb/EhKBPspY4c0.jpg',
photo_130: 'http://cs628523.v...0bc/r85yDlLEX4s.jpg',
photo_604: 'http://cs628523.v...0bd/0vJL28E-p_M.jpg',
photo_807: 'http://cs628523.v...0be/cOyGd6iGxO8.jpg',
width: 722,
height: 337,
text: '',
date: 1448431412
},
is_external: 1
}
}],
post_source: {
type: 'vk'
}
}],
post_source: {
type: 'vk'
},
comments: {
count: 0,
can_post: 1
},
likes: {
count: 17,
user_likes: 0,
can_like: 1,
can_publish: 1
},
reposts: {
count: 2,
user_reposted: 0
}
}]


Не самый удачный пример, так как тут все 1 история репоста, но суть в том что

Меня интересует последний элемент массива copy_history в возвращаемом значении, и я его проверю по совпадению текста -
r.response[0].copy_history[r.response[0].copy_history.length - 1].text == 'мой текст'

Как узнать размер массива возвращаемого в vk api? = хотел сперва задать такой вопрос, но мне кажется r.response[0].copy_history.length - 1 должно работать, проблема в том, что r.response[0].copy_history - undefined

По моему логично, но такое не работает.. и:
alert(r.response[0].copy_history); возвращает undefined.

Почему? и как тогда проверить репост на соответствие моему начальному посту?
  • Вопрос задан
  • 865 просмотров
Решения вопроса 1
@crayes23 Автор вопроса
СПАСИБО Neoline Neoline
Я посмотрел console.log(r.response[0]); и всё понял, там действительно нет copy_history), видимо документация на их сайте устарела. Спасибо ещё раз

и кому интересно представляю ответ -
Object {id: 38085, from_id: -51370128, to_id: -51370128, date: 1448435117, post_type: "copy"…}
attachment: Object
attachments: Array[1]
comments: Object
copy_owner_id: 1
copy_post_date: 1448431475
copy_post_id: 593585
copy_post_type: "post"
copy_text: "Комментарий Павла по поводу статьи в издании "Секрет Фирмы". #durov #павелдуров

Издание «Секрет фирмы» опубликовало рейтинг самых успешных молодых предпринимателей возрастом до 40 лет с российским гражданством. Лидером списка стал основатель «ВКонтакте» и Telegram Павел Дуров.

«Секрет фирмы» выстроил рейтинг по уменьшению стоимости доли предпринимателя в его бизнесе. Лидер списка, 31-летний Павел Дуров, целиком контролирует Telegram, который издание оценило в $1 млрд. Сам Дуров полагает, что его компания стоит около $3-4 млрд.

На втором месте — 39-летний Иван Таврин, гендиректор «Мегафона» и совладелец «ЮТВ Холдинга», в котором ему принадлежит 50%. Его долю издание оценило в $400 млн.

Третье и четвёртое место заняли братья Семён и Ефим Войновы (обоим по 33 года), их доли в разработчике игр Zeptolab оценены в $250 млн. На пятом месте — 38-летний основатель поисковика авиабилетов OneTwoTrip Пётр Кутис ($130 млн)."
date: 1448435117
from_id: -51370128
id: 38085
likes: Object
post_type: "copy"
reposts: Object
text: "Можно ли дать рыночную оценку тому, что не продается?"
to_id: -51370128
__proto__: Object

не стал раскрывать всё, можете посмотреть сами
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
kursorik2
@kursorik2
Junior-Developer
<?
//код
echo response[0].copy_history[0].text;
?>

<script>
//код
alert(response[0].copy_history[0].text);
</script>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы