it-swarm.com.de

Wie poste ich animierte GIFs auf Facebook?

Ein Freund hat ein Bild, das gerade animiert wurde, direkt in den Nachrichten-Feed auf meiner Facebook-Startseite gestellt. Wie ist das möglich? Wie geht das?

Dies ist die von Facebook verwendete URL: http://photos-c.ak.fbcdn.net/hphotos-ak-snc3/29301_442976909814_310716489814_5773694_3162803_s.jpg

Ist es ein GIF-Bild, das gerade in .jpg umbenannt wurde? Wahrscheinlich nicht.

Ich weiß nicht, ob es hilft oder nicht, aber hier ist der Teil (Skript), der diese Bild-URL enthält:

<script>big_pipe.onPageletArrive({"phase":4,"id":"pagelet_photo_bar","css":["aes1F","FPnMi"],"js":["Py8xV","1k++i","9qrJd"],"onload":["PhotoTheater.init(HTML(\"\\u003cdiv id=\\\"fbPhotoTheater\\\" class=\\\"fbPhotoTheater hidden_elem narrowerWhiteBar\\\" tabindex=\\\"0\\\" role=\\\"region\\\" aria-label=\\\"Facebook-Diashow\\\" aria-busy=\\\"true\\\">\\u003cdiv class=\\\"container\\\">\\u003cdiv class=\\\"positioner\\\">\\u003ca class=\\\"uiTooltip closeTheater\\\" href=\\\"#\\\">\\u003ci class=\\\"closeImage img sp_6lzo0r sx_bbf9a4\\\">\\u003c\\\/i>\\u003cspan class=\\\"uiTooltipWrap middle left leftmiddle\\\">\\u003cspan class=\\\"uiTooltipText uiTooltipNoWrap\\\">Schlie\\u00dfen\\u003c\\\/span>\\u003c\\\/span>\\u003c\\\/a>\\u003c\\\/div>\\u003cdiv class=\\\"stageBackdrop\\\">\\u003c\\\/div>\\u003cdiv class=\\\"stageWrapper\\\">\\u003cdiv class=\\\"stage\\\">\\u003cimg src=\\\"\\\/images\\\/loaders\\\/indicator_black.gif\\\" class=\\\"spotlight\\\" \\\/> \\u003cdiv class=\\\"fbPhotosTheaterTags tagContainer\\\" id=\\\"fbPhotoTheaterTags\\\">\\u003cdiv class=\\\"tagsWrapper\\\">\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/div>\\u003cdiv class=\\\"videoStage\\\"> \\u003c\\\/div>\\u003cdiv id=\\\"fbPhotoTheaterError\\\" class=\\\"fbPhotoTheaterError hidden_elem stageError\\\">\\u003c\\\/div>\\u003c\\\/div>\\u003cdiv class=\\\"stageActions\\\" id=\\\"fbPhotoTheaterStageActions\\\">\\u003ca class=\\\"prev\\\" href=\\\"#\\\" title=\\\"Zur\\u00fcck\\\">\\u003c\\\/a>\\u003ca class=\\\"next\\\" href=\\\"#\\\" title=\\\"Weiter\\\">\\u003c\\\/a>\\u003cdiv class=\\\"fbPhotoTheaterButtons\\\" id=\\\"fbPhotoTheaterButtons\\\">\\u003c\\\/div>\\u003c\\\/div>\\u003cdiv class=\\\"photoInfoWrapper\\\">\\u003ctable class=\\\"uiGrid fbPhotoTheaterGrid photoInfo\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\\u003ctbody>\\u003ctr>\\u003ctd class=\\\"vTop detailsCell\\\">\\u003cdiv class=\\\"detailsContainer\\\">\\u003cdiv id=\\\"fbPhotoTheaterTitle\\\">\\u003c\\\/div>\\u003cspan id=\\\"fbPhotoTheaterContributors\\\">\\u003c\\\/span> \\u003cspan class=\\\"fsm fwn fcg\\\" id=\\\"fbPhotoTheaterCount\\\">\\u003c\\\/span>\\u003chr class=\\\"mvm\\\" \\\/>\\u003cdiv id=\\\"fbPhotosTheaterActions\\\" class=\\\"fbPhotosTheaterActions\\\">\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/td>\\u003ctd class=\\\"vTop commentsCell\\\">\\u003cdiv class=\\\"commentsContainer\\\">\\u003cdiv class=\\\"fbPhotosTaglist mbm tagpile\\\" id=\\\"fbPhotosTaglist\\\">\\u003cspan class=\\\"caption fsm fwn fcg\\\">Auf diesem Foto: \\u003c\\\/span>\\u003c\\\/div>\\u003cdiv id=\\\"fbPhotoTheaterUfi\\\">\\u003cform rel=\\\"async\\\" class=\\\"commentable_item autoexpand_mode\\\" method=\\\"post\\\" action=\\\"\\\/ajax\\\/ufi\\\/modify.php\\\" onsubmit=\\\"return Event.__inlineSubmit(this,event)\\\">\\u003cinput type=\\\"hidden\\\" name=\\\"charset_test\\\" value=\\\"&euro;,&acute;,\\u20ac,\\u00b4,\\u6c34,\\u0414,\\u0404\\\" \\\/>\\u003cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"post_form_id\\\" value=\\\"10711e587b061f39240641dbc74019ac\\\" \\\/>\\u003cinput type=\\\"hidden\\\" name=\\\"fb_dtsg\\\" value=\\\"AQBfQgRs\\\" autocomplete=\\\"off\\\" \\\/>\\u003c\\\/form>\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/td>\\u003ctd class=\\\"vTop adsCell\\\">\\u003cdiv class=\\\"adsContainer\\\">\\u003cdiv class=\\\"clearfix\\\">\\u003cdiv id=\\\"fbPhotoTheaterEgo\\\" class=\\\"fbPhotoTheaterEgo\\\">\\u003c\\\/div>\\u003cdiv class=\\\"fbPhotoTheaterEgoSponsored fss fwn fcg\\\">Gesponsert\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/td>\\u003c\\\/tr>\\u003c\\\/tbody>\\u003c\\\/table>\\u003c\\\/div>\\u003c\\\/div>\\u003c\\\/div>\"));"],"onafterload":["Bootloader.loadComponents([\"fb-photos-theater-css\"], function(){  });"],"content":{"pagelet_photo_bar":"\u003cdiv class=\"mbm fbProfilePhotoStrip\">\u003cul class=\"fbProfilePhotoBar\">\u003cli class=\"stat_elem\" id=\"thumb193067094054363\">\u003ca class=\"uiMediaThumb fbProfilePhotoThumb uiMediaThumbMedium\" href=\"http:\/\/www.facebook.com\/photo.php?fbid=193067094054363&amp;set=t.100000400858474&amp;type=1\" rel=\"theater\" ajaxify=\"http:\/\/www.facebook.com\/photo.php?fbid=193067094054363&amp;set=t.100000400858474&amp;type=1&amp;src=http\u00253A\u00252F\u00252Fa1.sphotos.ak.fbcdn.net\u00252Fhphotos-ak-snc6\u00252F179200_193067094054363_100000532222327_655777_5428850_n.jpg&amp;theater\">\u003ci style=\"background-image: url(http:\/\/photos-a.ak.fbcdn.net\/hphotos-ak-snc6\/179200_193067094054363_100000532222327_655777_5428850_s.jpg); background-position: -33px -17px;\">\u003c\/i>\u003c\/a>\u003c\/li>\u003cli class=\"stat_elem\" id=\"thumb185312914825402\">\u003ca class=\"uiMediaThumb fbProfilePhotoThumb uiMediaThumbMedium\" href=\"http:\/\/www.facebook.com\/photo.php?fbid=185312914825402&amp;set=t.100000400858474&amp;type=1\" rel=\"theater\" ajaxify=\"http:\/\/www.facebook.com\/photo.php?fbid=185312914825402&amp;set=t.100000400858474&amp;type=1&amp;src=http\u00253A\u00252F\u00252Fa8.sphotos.ak.fbcdn.net\u00252Fhphotos-ak-snc6\u00252F165369_185312914825402_100000400858474_523262_6205304_n.jpg&amp;theater\">\u003ci style=\"background-image: url(http:\/\/photos-h.ak.fbcdn.net\/hphotos-ak-snc6\/165369_185312914825402_100000400858474_523262_6205304_s.jpg); background-position: -22px -30px;\">\u003c\/i>\u003c\/a>\u003c\/li>\u003cli class=\"stat_elem\" id=\"thumb175015452521815\">\u003ca class=\"uiMediaThumb fbProfilePhotoThumb uiMediaThumbMedium\" href=\"http:\/\/www.facebook.com\/photo.php?fbid=175015452521815&amp;set=a.175015445855149.34462.100000400858474&amp;type=1\" rel=\"theater\" ajaxify=\"http:\/\/www.facebook.com\/photo.php?fbid=175015452521815&amp;set=a.175015445855149.34462.100000400858474&amp;type=1&amp;src=http\u00253A\u00252F\u00252Fa6.sphotos.ak.fbcdn.net\u00252Fhphotos-ak-snc4\u00252F156854_175015452521815_100000400858474_459703_1557976_n.jpg&amp;theater\">\u003ci style=\"background-image: url(http:\/\/photos-f.ak.fbcdn.net\/hphotos-ak-snc4\/156854_175015452521815_100000400858474_459703_1557976_s.jpg);\">\u003c\/i>\u003c\/a>\u003c\/li>\u003cli class=\"stat_elem\">\u003cdiv class=\"fbProfilePhotoThumbEmpty\">\u003c\/div>\u003c\/li>\u003cli class=\"stat_elem\">\u003cdiv class=\"fbProfilePhotoThumbEmpty\">\u003c\/div>\u003c\/li>\u003c\/ul>\u003c\/div>"}});</script> 

Der wichtige Teil des oben genannten scheint hier zu sein:

style=\"background-image: url(http:\/\/photos-f.ak.fbcdn.net\/hphotos-ak-snc4\/156854_175015452521815_100000400858474_459703_1557976_s.jpg);\">
22
bitbonk

Mai 2015

http://mashable.com/2015/05/29/facebook-gif-support/

Als Erstes muss beachtet werden, dass die Funktion mit GIF-Links und nicht mit GIF-Uploads funktioniert. Zumindest für den Moment führt der Versuch, Ihr Lieblings-GIF hochzuladen, nicht zu einem verwendbaren, spielbaren GIF auf Facebook.

[...]

Dienste wie Giphy, Imgur, GFYcat und andere versuchen, das Einbetten großer GIFs im gesamten Web zu vereinfachen

[...]

stellen Sie sicher, dass Sie die vollständige GIF-URL von Giphy oder anderen GIF-Diensten verwenden.

April 2012 - Current Exploit verwendet die mobile Textanwendung zum Weitergeben von Bildern

http://www.facebook.com/connect/uiserver.php?app_id=2915120374
&method=stream_publish
&redirect_uri=http://www.facebook.com
&from=SENDERID
&target_id=RECEIVERID
&action_links=[{"text":"Your Text Here",
                "href":"http://www.blank.com/"}]
&attachment={'media':[{'type':'image',
                       'src':'animationurl',
                       'href':'anyurl'}],
             'description':'LongDescription',
             'properties':{'Anything':{'text':'Anything',
                                       'href':'anyurl'}}}

Das einzige, was wirklich benötigt wird, ist das animationurl, das ein von Facebook gehostetes Bild sein muss.

Dies sind die Wege, die bisher möglich waren

  • Ändern des Dateinamens in GIF
  • Ändern der Dateigröße auf ca. 120 Pixel, um die Komprimierung zu umgehen
  • Ändern von Header-Daten oder Hinzufügen von Bytes (z. B. die Endung 3B in den GIF-Daten) am Ende der Datei, um die Facebook-Bildwerkzeuge zu umgehen
    Data Change
  • Über Facebook FBML
  • Über Facebook HMTL-Tags in Notizen

Die erste Möglichkeit scheint darin zu bestehen, die derzeit verfügbaren Gifs auf Facebook-Servern zu teilen, indem Benutzer darin markiert werden. Ich habe keine neuen GIFs außer denen gesehen, die derzeit kreisen.

Die zweite nutzt einen Missbrauch der Facebook-API über eine Facebook-Anwendung. Der Entwickler versteckte die GIFs in einer Vorschau zum Einbetten von Videos.

Developer application

Angenommen, einer würde es herausfinden, dann wären Sie gesperrt ... weil dies bedeutet, dass das System zum Hochladen von Bildern fehlerhaft ist und gefährlicher Code ausgeführt werden kann, indem er in einem GIF oder Bild verborgen wird. Es scheint, dass Facebook Photo Team dafür sorgen wird, dass GIFs nicht mehr in der Nähe bleiben.

Nathaniel Roman

Quora Image: That was a bug that was on the site for just a short period of time. It got fixed awhile back.

Und früher im alten Facebook Dev Wiki hat sich dies vielleicht inzwischen geändert, aber der Kern bleibt derselbe

Die Facebook-Plattform behandelt IMG-Tags auf besondere Weise. Beim Veröffentlichen einer Seite fordern Facebook-Server Bild-URLs an und liefern diese Bilder. Dabei wird das src-Attribut aller img-Tags unter Verwendung einer * .facebook.com-Domain neu geschrieben. Dies schützt die Privatsphäre der Facebook-Nutzer und ermöglicht ihnen eine bessere Kontrolle der Servicequalität ihrer Bilder.

Es gibt mehrere Gründe für das Vorhandensein des Bildcaches:

  • Wir brauchen eine Möglichkeit, um ein gewisses Maß an Qualität und Einheitlichkeit der in den Benutzerprofilen angezeigten Bilder zu gewährleisten (keine animierten Bilder, keine 50-MB-Bilder usw.).
  • Wir müssen die Privatsphäre der Benutzer schützen und dürfen nicht zulassen, dass böswillige Anwendungen Informationen aus Bildanfragen extrahieren, die direkt vom Browser eines angezeigten Benutzers stammen
  • Der für Sie wahrscheinlich wichtigste Bild-Cache schützt Entwickler vor der potenziell enormen Belastung durch die Bereitstellung dieser Bilder und belastet stattdessen die Ressourcen von Facebook

Und am Ende, wie ich schon erwähnt habe

Auch wenn nirgendwo in den AGB angegeben,

Durch das Hochladen einer Datei bestätigen Sie, dass Sie das Recht haben, dieses Bild zu verbreiten und dass es nicht gegen die Nutzungsbedingungen verstößt

Sie erhalten möglicherweise ein Pat auf der Rückseite, wenn Sie mit einem Testbenutzerkonto testen, aber einen Exploit (falls gefunden) für ein persönliches Konto verwenden. Ich bin mir sicher, dass Sie am Ende eine Kündigung Ihres Kontos sehen werden.

P.S. Denken Sie nicht, dass Facebook-Mitarbeiter diese Informationen nicht sehen, wenn Sie Websites durchsuchen. Sobald ein Exploit öffentlich bekannt ist, wird er in der gleichen Zeitspanne heruntergefahren

15
phwd

Obwohl die Erweiterung JPEG ist, ist es immer noch eine GIF-Datei

Firefox image

Um Ihre Frage zu beantworten, ist dies was ich gefunden habe :

Sie müssen lediglich ein kleines animiertes GIF (ca. 50 KB oder weniger) als Ihr Profilfoto hochladen (Facebook reduziert animierte GIFs, die zu groß sind, die kleineren jedoch nicht erkennen). Es wird dann in Ihrem Profilalbum sein. Ihr Icon selbst wird NICHT animiert. Sie sehen es jedoch als animiert in Ihrem Ordner mit den Facebook-Profilfotos. Wenn Sie zu diesem Foto gehen und auf "Freigeben" klicken, wird es als animiert an Ihrer Wand angezeigt.

Profil-Thumbnails werden immer aus dem Basis-Image generiert. Wenn das Basisbild kleiner als 120 x 120 ist, bleibt die Animation sowohl in der minimierten als auch in der maximierten Ansicht erhalten. Alles über dieser Größe muss so angepasst werden, dass es als minimiertes Miniaturbild der Galerie angezeigt wird. Die Animation geht verloren, die volle Größe sollte jedoch animiert bleiben.

6
Sathyajith Bhat

Ich habe nachgeforscht und festgestellt, dass das Bild von der Anwendung erstellt wird http://apps.facebook.com/animated-picture/ Sie können auf dieser Anwendung Dateien wie diese aus einer SWF (Flash) als animiert generieren GIF und veröffentlichen Sie auf Ihrem Facebook!

1
Fábio Colella

Facebook unterstützt jetzt das native Hochladen von animierten GIF-Dateien. Wenn Sie auf der Seite "Newsfeed" oder "Timeline" im Feld "Statusaktualisierung" auf die Schaltfläche "Bild hochladen" klicken und die hochzuladende animierte GIF-Datei auswählen, wird sie hochgeladen und von Facebook in eine MP4-Videodatei konvertiert, die wiedergegeben werden kann Wie eine normale Facebook-Videodatei, einschließlich der Möglichkeit, bei bestimmten Frames eine Pause einzulegen, was beim Anzeigen einer normalen animierten GIF-Datei nicht möglich ist. Obwohl das GIF nach dem Hochladen tatsächlich in eine Videodatei konvertiert wurde, enthält es ein Overlay-Label mit der Aufschrift GIF.

Da es sich um eine Videodatei handelt und Facebook Videodateien im Newsfeed automatisch abspielt (wenn Sie diese Facebook-Einstellung nicht deaktiviert haben), sollte es sich wie ein animiertes GIF verhalten (ständige Schleife), da Facebook automatisch Videos abspielt, die kürzer als 30 Sekunden sind lange.

0
mack nordstrum