Кнопка «Мне нравится» и проблема конфиденциальности - PullRequest
6 голосов
/ 25 августа 2011

Я управляю веб-сайтом в пределах ЕС, и в настоящее время нет никакого способа без этих социальных кнопок повсюду (согласно «их» «там»).

В последнее время есть беспокойство по поводу законность этого в ЕС , в частности, сбор пользовательской информации, отправляемой на серверы США без явного согласия пользователя.

На golem.de был опубликован немецкий отчет вместе с советом отюрист (извините, только на немецком языке), что было бы достаточно, если бы встроенная кнопка «Нравится» автоматически не запускала взаимодействие с американским сервером, а только с согласия пользователя, то есть ручного взаимодействия, такого как щелчок.

В настоящее время мы используем официальный метод включения вместе с подпиской на событие edge.create , чтобы получить некоторое представление о его использовании.Но, к сожалению, это работает, загружая iframe с контентом из Facebook, таким образом, немедленно отправляя данные о пользователе без его согласия, даже без нажатия на него.Я ищу способ избежать этого.

Идея: показать локальное изображение с локальным href, которое начинает загружать материалы Facebook только тогда, когда пользователь фактически нажимает на них.

Проблемы, как я их вижу:

  1. Пользователь нажимает на мой элемент DOM, и теперь мне нужно действовать так, как будто нажата настоящая кнопка FB, но как я могу это сделать, поскольку настоящей кнопки нет?Если я загружу кнопку, пользователь увидит вторую, нужно будет нажать еще раз и т. Д. Мне нужно будет загрузить, если за пределами экрана, имитировать щелчок и т. Д. Сложно и запутанно.
  2. Счетчик следующийчтобы лайки не хватало.Мне нужно было бы найти способ получить эту информацию для текущего URL-адреса (например, на стороне сервера), аккуратно кэшировать эти данные и при этом иметь возможность показывать ее пользователю.Я понятия не имею, где я мог бы получить эти данные.

Находясь в ЕС или нет, закон или нет, так как я только недавно начал изучать это (потому что моя работа требовала этого), это дало мнеподкрадывается, когда я понял, как это на самом деле работает.Я веб-параноик, не могу поверить, что я один.

Есть идеи, как решить вышеуказанные проблемы?

Ответы [ 2 ]

4 голосов
/ 02 сентября 2011

Для меня окончательное решение заключается в том, как его реализовал немецкий новостной портал heise.de.

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

Это вызвало интерес некоторых пользователей ( немецкая статья , перевод Googleна английский ) и уже позвонил в план Facebook (предположительно из Германии), как они написали в своей статье, о том, что использовать их кнопки так, как они это сделали, против их политики.

Обновление:

И теперь он поразил Slashdot: «Два клика для большей конфиденциальности» Хейз против Facebook

0 голосов
/ 26 августа 2011

Обратный вызов edge.create не включает идентификатор пользователя;он просто уведомляет вас о том, какая кнопка «Нравится» была нажата.Если пользователь не предоставил вам свои данные каким-либо иным способом, по Facebook невозможно определить, кто является пользователем - либо по наличию кнопки «Мне нравится», либо по нажатию на нее пользователем.

Часто задаваемые вопросы Facebook о том, чтоFacebook собирает информацию, когда пользователи просматривают кнопки «Нравится», но не взаимодействуют с ними, здесь: https://www.facebook.com/help/?faq=186325668085084

Чтобы ответить на ваши конкретные вопросы:

  1. I'mне уверен, как это сделать, не испытывая при этом неприятных ощущений.По сути, вы описываете решение, в котором вы хотите предложить функциональность Facebook Like, но сначала заставьте пользователя щелкнуть что-нибудь, сказав: «Я хочу видеть кнопки Facebook Like»

  2. Вы можете получить доступтекущий счетчик лайков для любого URL или объекта в Graph API на https://graph.facebook.com/,, например, вызов https://graph.facebook.com/facebook возвращает следующую информацию (в формате JSON):

    {
       "id": "20531316728",
       "name": "Facebook",
       "picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/174597_20531316728_2866555_s.jpg",
       "link": "https://www.facebook.com/facebook",
       "likes": 51545712,
       "category": "Product/service",
       "website": "http://www.facebook.com/\n",
       "username": "facebook",
    [...]
    

в поле likes нет точного числа, которое будет отображаться на кнопке «Нравится», но это хорошее число для начала.(Фактическое число на кнопке «Мне нравится» также включает другую статистику, как указано в https://developers.facebook.com/docs/reference/plugins/like/)

...