2012-09-03 58 views
0

使用與我用來創建頁面事件的訪問令牌相同的訪問令牌,我嘗試使用PHP SDK 3.1.1向其上傳照片上傳圖片到頁面事件:#1「發生未知錯誤」

的清單:

  • 我傳遞的訪問令牌
  • 訪問令牌我傳遞確實有create_event,publish_stream,photo_upload
  • 我想提出一個呼叫/ EVENT_ID /圖片
  • 我使用POST方法
  • 】這個params不包含所需的訪問令牌和源= @ ABSOLUTE_PATH_TO_IMAGE
  • 文件上傳支持打開以PHP SDK對象

我已經(主要是以前嘗試seperately)

  • 嘗試上載請求的相同PARAMS內的圖片,用於創建的情況下,與源PARAM,完整的圖像的文件路徑
  • 相同之前,使用@,但在代替使用參數「來源」,我嘗試$params[basename($file)] = '@' . $file;
  • 嘗試將圖片添加到/ EVENT_ID /圖片,但使用url = URL_TO_FILE而不是source = @ABSOLUTE_PATH_TO_FILE(導致完全相同的錯誤,「未知錯誤有發生」
  • 添加文本到PARAMS消息param其中,我分別從創建事件
  • 添加會場= NULL到params用於在那裏我創建事件上傳的圖片
  • 我曾嘗試使用了最新的Facebook SDK PHP文件

這裏是一個PHP兩個請求的:

array(6) { 
    ["name"]=> 
    string(11) "Superman IV" 
    ["start_time"]=> 
    string(24) "2012-09-23T16:00:00+0200" 
    ["end_time"]=> 
    string(24) "2012-09-23T17:30:00+0200" 
    ["description"]=> 
    string(237) "Lex Luther wykrada z muzeum włosy Supermana. Dzięki nim udaje mu się stworzyć super robota, Nuclear Mana, który potrafi czerpać energię ze słońca. Dzięki temu Nuclear Man staje się niezniszczalny i staje do walki z Supermanem." 
    ["access_token"]=> 
    string(118) "<censored>" 
    ["@event_cover.jpg"]=> 
    string(61) "@/var/www/rr048_attila/templates/template/img/event_cover.jpg" 
} 
array(2) { 
    ["access_token"]=> 
    string(118) "<censored>" 
    ["source"]=> 
    string(61) "@/var/www/rr048_attila/templates/template/img/event_cover.jpg" 
} 

注意,對於@ event_cover.jpg PARAM,我試着不關鍵中的@做同樣的,也沒有說PARAM可言。

以下是錯誤我得到的第二請求的var_dump()

array(2) { 
    ["error_code"]=> 
    int(1) 
    ["error_msg"]=> 
    string(25) "An unknown error occurred" 
} 

沒有人有任何的想法是什麼原因造成這個問題,或者什麼我忘了怎麼辦?

回答

2

目前,這可能會受到Facebook bug的影響。我正在追蹤它here 從我的角度來看,我也創建了類似的問題,但沒有人回答它。 (問題都可以找到here) 問題可以連接到Timezone Migration,因爲在這之前我的事件和圖片上傳到他們正常的工作和被做劇本沒有變化。

+0

在你寫的Facebook的票,你說你會得到相同的(#1)「未知出錯」的錯誤,但在計算器一個,你說你有(#324)丟失或無效的圖像文件。那些看起來不一樣。它們是否都是由時區遷移引起的?另外,我會以Facebook希望的格式給我的日期,包括時區。這不是應該讓我沒有得到錯誤嗎? –

+0

我嘗試了不同的方式,也是硬編碼的鏈接,應該上傳圖片,但這是不成功的。 –

+0

啊,你是對的。我禁用了App高級設置中的「Events Timezone」,結果是:使用第二個請求仍然不起作用,並給出相同的錯誤,但都使用'$ param [basename($ file)] = $ file;'或'$ param ['@'。 basename($ file)] = $ file;' 太棒了。 給讀這個stackoverflow解決方案的每個人:這是一個臨時解決方案,因爲這仍然是一個錯誤。如果它得到修復並且不再推薦這種攻擊,請提醒我注意一下,我會用警告修改我的問題。 –

相關問題