2010-11-22 80 views
9

我想使用Graph API發佈到Facebook的鏈接,但我希望能夠避免縮略圖圖像。 Facebook的網頁界面在發佈圖片時沒有縮略圖複選框;我想從我自己的應用程序中模擬這個。如何在沒有縮略圖的情況下發布鏈接至Facebook?

我試過爲sourcepicture參數指定一個空字符串,但Facebook仍然爲指定的link提取縮略圖。

舉例來說,我已經試過這一點,但縮略圖仍顯示:

curl -F 'access_token=...' \ 
    -F 'message=Link with empty source and empty picture' \ 
    -F 'link=http://stackoverflow.com' \ 
    -F 'picture=' \ 
    -F 'source=' \ 
    https://graph.facebook.com/me/feed 

UPDATE:This support forum表明,這是與Facebook的錯誤,他們建議發佈一個1x1像素的清晰的圖像。我更喜歡比這更好的解決方法。

+1

我在這個新的bug跟蹤系統中創建了一個Facebook bug:https://developers.facebook.com/bugs/231434760243248 – Akrikos 2011-10-14 13:57:31

回答

3

Facebook已經修復了這個bug。將圖片設置爲空字符串或設置圖片= NULL,都應該現在工作。

+1

不幸的是,它不適合張貼到「我/鏈接」 – Bozho 2012-01-08 09:37:19

1

嘗試使用值 「0」 的畫面。這對我們很有用,它確實在鏈接信息旁邊顯示了一個灰色條,但它不會拉入默認圖像,並且在使用1x1像素時不會顯示尷尬的空白。

希望這會有所幫助!

+0

Andy,謝謝!這正是我所期待的。 – 2010-12-09 05:00:44

+0

無賴。我不得不刪除這個接受的答案,因爲Facebook不再允許這樣做。如果你嘗試'圖片= 0',Facebook返回以下無意義的錯誤:**(#100)FBCDN圖像是不允許在流** – 2011-03-08 02:36:14

4

由於picture=0似乎不再而不發出一個錯誤的工作,這裏的另一種方式,但它很可能推薦一個黑客,而不是。通過跳過picture參數並指定source參數是一個有效的URL,但不是圖像,Facebook將呈現不帶縮略圖的帖子。例如:

curl -F 'access_token=...' \ 
    -F 'message=Link with empty source and empty picture' \ 
    -F 'link=http://cnn.com' \ 
    -F 'source=http://cnn.com' \ 
    https://graph.facebook.com/me/feed 
+0

這似乎工作...但你說得對,它感覺哈克。我只是忽略包括一張圖片,但直到今天它已經開始間歇性地返回成功,沒有圖像或{「error」:{「type」:「OAuthException」,「message」:「(#100)img objects must valid 'src'和'href'屬性「}}或包含頁面中的圖像。我認爲他們再次混淆了它,並沒有把它做對:-( – Akrikos 2011-09-14 00:27:09

+0

奇怪的是,如果您查詢通過此方法創建的帖子,圖片和源屬性都不存在。 – Akrikos 2011-09-14 00:30:59

0

現在,在2011年6月,似乎「圖片=」完全沒有必要的參數,而FB沒拉一個從頁面之一:

curl \ 
    -F "message=test message, attempting to verify solution of SO problem" \ 
    -F "name=StackOverflow" \ 
    -F "link=http://stackoverflow.com/questions/4246170/how-do-i-post-a-link-to-facebook-without-a-thumbnail" \ 
    -F "access_token=you_dont|reallythink|imgonnapostmyrealaccesstoken_doya?" \ 
    "https://graph.facebook.com/11239244970/feed" 

結果在SO的Facebook頁面:https://www.facebook.com/pages/stackoverflow/11239244970

+0

太棒了,Facebook的API再次發生了變化。這種行爲現在是在什麼地方記錄下來的,或者是另一個隱藏的變化嗎?我只是擔心如果他們選擇將它「修復」回到過去的工作方式,就依靠這一點。例如,我們仍然使用clear圖片破解只是爲了確保我們的客戶始終獲得所需的行爲 看到這一點:https://skitch.com/rmm5t/fruhy/no-thumbnail-graphapi – 2011-06-14 13:27:08

+0

也許沒有文件,至少在在線圖中沒有提到API文檔,我覺得這個API是供Facebook自己使用的,如果其他人能夠使用它,他們也不會太在意,可能更適合使用透明像素。醜陋的黑客工程有時是最好的解決方案。 – 2011-06-14 14:23:32

+0

我使用不包含圖片標籤的方法出現間歇性問題。有時它會向我拋出一個錯誤,其他時候它實際上會拉入一幅圖像。 :-( – Akrikos 2011-09-14 00:04:44

0

看來,如果你指定的圖片網址,或者服務器無法訪問或圖像不存在,所產生的帖子包括根據需要將灰色條:

curl -F 'access_token=...' \ 
-F 'message=404 picture' \ 
-F 'link=http://example.com' \ 
-F 'name=Example' \ 
-F 'description=example.com is not about bbq' \ 
-F 'caption=example.com' \ 
-F 'picture=http://example.com/this/does/not/exist/1.gif' \ 
https://graph.facebook.com/me/feed/ 

然而對於充分披露,因爲它似乎哈克和我不相信Facebook的允許此方法無限期地存在,我沒有在生產中使用此解決方案。

0

把無效的URL圖像是將「解決」,而Facebook的沒有修復這個bug。 參數是:「圖片」

0

這已被Facebook禁用,它不是一個錯誤,它的設計,因爲它是由FB團隊說here。他們表示,他們也會從他們的網站上刪除「無縮略圖」選項,而不僅僅是在API上。我鏈接的主題是最近的(2015年12月31日)。

現在唯一的選擇是將字段picture與url一起發送到1x1像素的圖像。

相關問題