Facebook: пост к моей стене с картинкой из моих альбомов - PullRequest
2 голосов
/ 17 февраля 2012

Когда я загружаю пост на свою стену, я бы хотел видеть не только сообщение, но и картинку.Если я добавлю (наряду с другими параметрами) строку с URL-адресом изображения для параметра «picture», это будет работать.Но только в случае, если изображение находится на каком-то стороннем сервере, а не в моих альбомах на Facebook.

И когда я пытаюсь использовать URL изображения из моего альбома, я просто получаю«Auth исключение» без объяснения в ответе (это просто «ноль»);Я использую последний пример Hackbook и на его основе делаю запрос следующим образом:

    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"Some message", @"message",
                               @"http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/62347_158935964133931_100000525850093_395542_6306928_n.jpg", @"link",
                               @"http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/62347_158935964133931_100000525850093_395542_6306928_n.jpg", @"picture",
                               nil];
    [[delegate facebook] requestWithGraphPath:@"me/feed"
                            andParams:params
                            andHttpMethod:@"POST"
                            andDelegate:self];

Ссылки могут быть открыты в отдельном браузере (без файлов cookie), но с ними я получаю сбой.
Если изменить ссылки на что-л.вроде

https://www.google.com/intl/en_com/images/srpr/logo3w.png

Все отлично работает.

Любая идея будет высоко ценится.

Ответы [ 2 ]

1 голос
/ 18 февраля 2012

Хорошо, так как я потерял много времени, чтобы выяснить, что происходит, я хочу поделиться тем, что нашел, так как я не хотел бы, чтобы кто-нибудь проводил такое глупое время с Facebook API, как я делаем.

Я обнаружил, что на самом деле было описание исключения (я не смотрел в нужном месте), и его текст:

Ошибка! Ошибка Domain = facebookErrDomain Code = 10000 «Операция не может быть завершена. (FacebookErrDomain error 10000.)» UserInfo = 0x4e3b8f0 {error = {type = изменяемый dict, count = 3, записи => 2: {contents = "type"} = {contents = "OAuthException"} 3: {contents = "message"} = {contents = "(# 100) Изображение FBCDN не разрешено в потоке : http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc7/431663_370671769627015_100000525850093_1341387_699903787_n.jpg"} 6: {содержание = "код"} = 100 } } * +1010 *

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

А вот выдержка из developers.facebook.com :

Мы больше не разрешаем потоковым материалам содержать изображения, размещенные в домене fbcdn.net. Изображения, связанные с этими URL-адресами, не всегда оптимизированы для потоковых историй и иногда приводят к ошибкам, что приводит к ухудшению восприятия пользователем. Убедитесь, что ваши потоковые вложения не ссылаются на изображения с этим доменом. Вы должны разместить изображения локально

Итак, ребята, если вам крайне необходимо показать картинку в своем посте - начните готовить сторонний сервер для хранения там изображений для вас. Дайте мне знать, если я ошибаюсь - вы сделаете меня счастливее:)

1 голос
/ 17 февраля 2012

У меня была похожая проблема. Я пришел к выводу, что проблема в размере изображения, которое вы пытаетесь связать, для меня работает, только если это маленькое изображение.

Однако, как насчет ссылки на страницу в Facebook, которая содержит фотографию?

http://www.facebook.com/photo.php?fbid=MY_PHOTO_ID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...