Проблема совместного использования Facebook с пользовательскими и динамическими данными - PullRequest
0 голосов
/ 12 ноября 2018

Мне нужно выбрать изображение из галереи.Это изображение показано в модальном режиме (с использованием Bootstrap), а под ним есть кнопка «Поделиться» в Facebook.Эта кнопка должна предоставлять доступ к выбранному изображению во всю ширину, настраиваемому заголовку (всегда одинаковому), настраиваемому описанию (всегда одинаковому) и, когда пользователь Facebook нажимает на общий доступ, перенаправлять на настраиваемый URL-адрес (всегда одинаковый)., а не изображение).

Я пробовал разные способы (FB dev docs, http://drib.tech/programming/dynamically-change-facebook-open-graph-meta-data-javascript, другой "метод", другой "action_type" и т. д.), но у меня всегда возникают разные проблемы.

Следуя рекомендациям drib.tech, мы имеем следующую ситуацию:

  • web: он имеет правильное название, описание и пользовательскую ссылку, но изображение всегда является миниатюрой и говорит: «Джон Кэтс»Нравится ссылка "вместо" John Cats SHARES ".Это потому, что я использовал "action_type": "og.likes", я думаю, но с любым другим типом (og.shares и т. Д.) Он использует неверное изображение, заголовок и описание (он принимает данные пользовательской ссылки)
  • Android (в приложении):это похоже на веб-результат, но затем оно не закрывает всплывающее окно
  • iOS: ничего не работает, я предполагаю, что оно ненавидит всплывающие окна.

Я пробовал использовать iframe вместо popupно он говорит, что это не разрешено.

Я также пытался использовать только URL-адреса участника Facebook:

https://www.facebook.com/sharer/sharer.php?u=" + url + "&title=" + titolo + "&picture=" + picture
https://www.facebook.com/share.php?u=" + url + "&title=" + titolo + "&picture=" + picture

, но в результате получилось неправильное изображение, заголовок, описание.

Итак ... У меня закончились идеи, мой сценарий беспорядок, и я не могу найти другие идеи.Есть предложения?

1 Ответ

0 голосов
/ 13 декабря 2018

Для последних обновлений из FB API требуется другая структура объекта action_properties.

Это рабочий пример:

FB.ui({
        method: 'share_open_graph',
        action_type: 'og.likes',
        action_properties: JSON.stringify({
            object: {
                "og": {
                    "url": your_url,
                    "title": your_title,
                    "image": {
                        "url": your_image_URL
                    }
                }
            }
        })
    }, function(response){});
...