добавление параметров отслеживания в ссылки из действий на временной шкале Facebook - PullRequest
6 голосов
/ 02 февраля 2012

Наш клиент хотел бы отслеживать, когда пользователи делятся ссылками друг с другом (через Facebook, Twitter, электронную почту и т. Д.), И вознаграждать человека, который первоначально поделился ссылкой. В настоящее время мы отслеживаем с помощью параметра URL-адреса, который содержит идентификатор пользователя, т.е.

http://www.customer.com/items/item1?sharedBy=user1

поэтому, когда пользователь нажимает на эту ссылку, мы в настоящее время публикуем стандартную запись на стене с этим URL. Когда друзья пользователя user1 переходят по этой ссылке, мы можем прочитать параметр sharedBy и дать пользователю user1 некоторую оценку рефералу.

Мы также переносим некоторые наши действия из стандартных сообщений на стене в новые действия OpenGraph, что создает проблему. Чтобы быть распознанным Facebook, объект opengraph имеет метаданные, подобные следующим:

    <meta property="fb:app_id" content="MY_APP_ID" /> 
    <meta property="og:title" content="test item 1" />
    <meta property="og:type" content="mynamespace:item" />
    <meta property="og:url" content="http://www.customer.com/items/item1" />
    <meta property="og:image" content="http://img.fark.net/images/2011/site/farkLogoBig.png" />

Независимо от того, какой URL я отправляю в Facebook, он будет использовать канонический URL (тег og: url) при создании ссылки. Итак, у меня нет параметра отслеживания.

Я могу придумать пару способов взломать это:

  1. Динамически генерирует значение og: url для соответствия любому URL-адресу, который просматривает Facebook. Я бы предпочел не ставить больше накладных расходов на реализацию всем своим клиентам (многие из которых недостаточно разбираются в технологиях, чтобы реализовать это без значительных затрат ресурсов). Также кажется, что Facebook может возразить против этого, поскольку он будет в основном обрабатывать каждый URL как отдельный объект, даже если они действительно одинаковы.
  2. Facebook самостоятельно добавляет параметр fb_action_ids в URL. Я мог бы получить их через API-интерфейс Graph и извлечь из него идентификатор пользователя facebook, а затем согласовать этот идентификатор с внутренними идентификаторами пользователей. Не хотел бы писать весь этот дополнительный код вместо повторного использования того же параметра, который использует любой другой механизм совместного использования.

Есть ли какой-то третий метод, который я не вижу, который позволил бы мне принудить Facebook добавить дополнительные параметры в свою ссылку на мою страницу?

1 Ответ

0 голосов
/ 02 февраля 2012

Итак, есть ли лучшие варианты, чем эти два?

Хотя это субъективный вопрос, требующий мнения, а не факта. У меня есть ответ, основанный на фактах и ​​мнениях, и я укажу оба. :)

1 полностью отсутствует, поскольку последнее предложение верно о том, как Facebook будет обрабатывать различные значения тега og: url как разные объекты (факт). Так что 2, или какой-то их способ, будет лучшим из двух (мнение)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...