2012-03-07 3 views
0

Я использую Facebook C# SDK, чтобы опубликовать его на моей странице в Facebook. Для продукта, который у меня есть на сайте, я хочу сделать сообщение на стене, в котором есть изображение и описание.Facebook: элемент стены «изображение» игнорируется

У меня есть следующий код для этого:

var args = new Dictionary<string, object>(); 
    args["message"] = "Product description ... "; 
    args["caption"] = "Last offer !!!"; 
    args["description"] = "Product description ... "; 
    args["name"] = "Product name ... " 
    //picture field is the link to my image on my site 
    args["picture"] = "http://mydomain.com" + Url.Action("ImageFile", "Files", new {sizes = "400x650", fileName = file.FileName}); 
    args["link"] = Url.Abs(Url.Action("Details", "Product", new {id = id})); 

Все поля в порядке, за исключением изображения. Изображение полностью игнорируется и не отображается в стене.

Моей целью является то же поведение, что и в случае, когда я вручную вставляю детали продукта в поле «Мое состояние» и генерируется такое сообщение, содержащее первое изображение и первый абзац.

PS: Может ли это быть связано с некоторыми настройками безопасности приложения facebook?

ответ

0

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

var pictureLink = "http://mydomain.com" + Url.Action("ImageFile", "Files", new {sizes = "400x650", fileName = file.FileName}); 
pictureLink = Server.UrlDecode(pictureLink); 
args["picture"] = pictureLink; 

В моем случае ссылка содержала некоторые символы, которые были закодированы. Вы должны отправить ссылку, как и в facebook, и они будут кодировать ее в формате url.

+0

fb C# sdk должен автоматически декодировать это для вас. какую версию sdk вы используете? – prabir

0

Для устранения неполадок удалите args ["link"] и проверьте, не помещается ли изображение. Если нет, то что-то не так с разрешениями на URL-адрес изображения, к которому пытается получить доступ facebook. Если он опубликовал изображение без аргумента ссылки, измените аргумент ссылки на аргумент «действие» «имя» и «ссылка», чтобы узнать, можете ли вы связать свою ссылку с публикацией.

Смежные вопросы