2010-05-20 24 views
2

我有一個問題FB.api的Facebook的Javascript FB.api - 回調不叫上錯誤

我正在打電話來創建一個事件東西沿着線:

FB.api('/me/events', 'post', { 
    access_token: $('#access_token').attr('value'), 
    name: td.find('#event_name').attr('value'), 
    description: td.find('#description').attr('value'), 
    start_time: td.find('#event_start').attr('value'), 
    end_time: td.find('#event_end').attr('value'), 
    street: td.find('#venue_street').attr('value'), 
    city: td.find('#venue_city').attr('value'), 
    country: td.find('#venue_country').attr('value') 
    }, function(response){ 
     console.log(response); 
}); 

它工作正常,直到例如'城市'是一個不存在的城市;那麼回調函數永遠不會被調用。

如果我考察使用Firebug淨面板AJAX請求提出,我看到下面是響應:

FB.ApiServer._callbacks.f37cab142051f02({ 
    "error": { 
     "type": "Exception", 
     "message": "(#151) Unknown city" 
    } 
}); 

的文檔似乎表明我在做正確的事: http://developers.facebook.com/docs/reference/javascript/FB.api

任何人爲什麼回調函數沒有被調用,以及我如何捕獲錯誤?

回答

3

要回答爲什麼回調不會被調用: 適當的回調被在Chrome對我執行,但不使用Firefox,所以我認爲它與回調爲HTTP處理的方式做在某些瀏覽器中有500個響應。

您還會看到回調被正確註冊,如果您在JavaScript控制檯中手動運行該回復,它應該適當地處理錯誤。

不知道如何讓它工作,但我懷疑需要更新JavaScript SDK。