При загрузке фотографии на Facebook с Rest API я получаю повторяющиеся записи в стене - PullRequest
1 голос
/ 18 февраля 2011

Я занимаюсь разработкой приложения для Facebook с помощью Flash Builder, в котором пользователи могут создать 6 изображений, а затем опубликовать их в своем фотоальбоме.

Загрузка работает нормально, но я получаю разное количество дубликатов на своей стене один разфотографии опубликованы в альбом.Я хочу видеть пост на своей стене с последними 3 фотографиями, которые я загрузил, в один ряд.Иногда я получаю 3 сообщения с одинаковыми фотографиями, иногда 4 и т. Д. Это очень странно, так как сообщение в новостной ленте или на стене всегда ведет себя по-разному.

Так я загружаюфото

protected function uploadPhotos(event:MouseEvent):void {
    var values6:Object = {caption:'caption', fileName:'FILE_NAME', image:img6};
    Facebook.callRestAPI('photos.upload', handleUploadComplete6, values6, 'POST');

    var values5:Object = {caption:'caption', fileName:'FILE_NAME', image:img5};
    Facebook.callRestAPI('photos.upload', handleUploadComplete5, values5, 'POST');

    var values4:Object = {caption:'caption', fileName:'FILE_NAME', image:img4};
    Facebook.callRestAPI('photos.upload', handleUploadComplete4, values4, 'POST');

    var values3:Object = {caption:'caption', fileName:'FILE_NAME', image:img3};
    Facebook.callRestAPI('photos.upload', handleUploadComplete3, values3, 'POST');

    var values2:Object = {caption:'caption', fileName:'FILE_NAME', image:img2};
    Facebook.callRestAPI('photos.upload', handleUploadComplete2, values2, 'POST');

    var values1:Object = {caption:'caption', fileName:'FILE_NAME', image:img1};
    Facebook.callRestAPI('photos.upload', handleUploadComplete1, values1, 'POST');
}

У кого-нибудь была такая же проблема?Мне бы очень хотелось узнать, что здесь происходит, так как я не могу получить какую-либо помощь от документации / форума по API Facebook.

Спасибо

Ответы [ 2 ]

0 голосов
/ 23 февраля 2011

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

Если у вас есть разрешение «read_stream» от пользователей, вы можете вручную искать дубликаты на их стенах с помощью URL-адреса, подобного следующему:

https://graph.facebook.com/USERID/feed?access_token=ACCESS_TOKEN

Другие подобные отчеты здесь:

forum.developers.facebook.net / viewtopic.php? PID = 317198

netqcreative.com / автоматический пост-стена-facebook / 472-авто-пост-facebook-это-двойной posting.html

(Извините, это не ссылки - по какой-то причине я не могу опубликовать несколько URL-адресов.)

Безумие, что публикация этого здесь, скорее всего, поможет, чем публикация на самом форуме Facebook ...

0 голосов
/ 22 февраля 2011

У меня точно такая же проблема, и, насколько я знаю, нет хорошего способа, чтобы этого не произошло - кажется, что каждый раз, когда вы загружаете фотографию, будет сообщение на стене. Также кажется (я говорю, кажется, потому что, как вы заметили, это не описано в документации FB), что количество дубликатов варьируется в зависимости от интервала между каждой загрузкой - если они все получены и опубликованы Facebook в течение миллисекунд каждого с другой стороны, это имеет тенденцию делать только одно обновление, но если между каждым POST и ответом будет больше времени, тогда будет больше сообщений на стене.

Я нашел только два способа справиться с этим -

  1. Удалите publish_stream из списка запрашиваемых вами разрешений - тогда ваше приложение не будет вызывать сообщения на стене. Любые фотографии, которые вы загружаете для пользователя, будут временно удерживаться, и пользователь может утвердить их, перейдя в фотоальбом и поработав с диалоговым окном, которое он предоставляет - "приложение добавило эти фотографии, одобрить / отклонить?" такие вещи.
  2. Вернитесь и удалите эти сообщения на стене после факта. Получите последние 10 сообщений на стене, посмотрите на каждое, чтобы определить (по идентификатору альбома, идентификатору фотографии, тексту сообщения и т. Д.), Что это уведомление относительно фотографий, опубликованных вашим приложением, и удалите дополнительные материалы. Это не очень надежно, потому что его нужно запускать после того, как уведомления уже есть на стене - и опять же, Facebook не предоставляет вам никакого способа сообщить, когда это произойдет.

Я выбрал вариант 2 в приложении, которое недавно сделал, и смог заставить его работать примерно в 95% случаев, создав задержку между тем, когда фотографии публикуются, и тем, когда стена пользователя очищается от постов, а затем удаление уведомлений о загрузке фотографий.

Надеюсь, кто-то еще публикует лучший способ, потому что этот способ - отстой, но я подозреваю, что это может быть единственным способом, пока Facebook не решит эту проблему.

...