2011-09-26 90 views
0

我試圖從Iframe應用程序發送應用程序請求。我打開這樣的對話框。FB.ui apprequest對話框出現問題

function sendRequestToOneRecipient(user_id) { 
     FB.ui({method: 'apprequests', 
      message: 'message', 
      to: user_id, 
      display: 'popup' 
     }, requestCallback(user_id)); 
     } 

當對話框打開時,我收到大量的「不安全的JavaScript嘗試訪問帶有來自URL的幀的幀」錯誤消息。發送和取消按鈕只是使對話框變爲空白,但不關閉,它不起作用。

我不知道它是否相關,但是當在Chrome中加載JS SDK時,我得到「無法讀取未定義的屬性'cb'並且Firefox顯示」b未定義「。我再也沒有對舊的FeatureLoader.js的引用。

回答

0

,這是我用來發送apprequest代碼,和從未有過問題,或者與Chrome或Firefox ...:■

他們最近發佈更多的例子最近在這裏:http://developers.facebook.com/docs/reference/dialogs/requests/

希望幫助

function send_apprequest(){ 
var post_options = { 
    method: 'apprequests', 
    display: 'iframe', 
    message: "My message", 
    data: "Any data your want to pass", 
    title: "My Title", 
    ref: "Not required but useful for Insights" 
}; 

FB.ui(post_options,function(response) { 
       if (response && response.request_ids) { 
         alert('\o/'); 

         } 
       }    
     ); 
} 
+0

謝謝,但我試過iframe顯示,並沒有工作。可能是因爲我沒有使用access_token。 –

0

我發現了這個問題。有一個包含Javascript文件與Facebook的Javascript衝突。我不確定究竟是什麼衝突,但它是2005年的JSON庫。謝天謝地,它沒有被使用,所以我剛剛刪除它。這是該文件的版權信息。

// VC-JSON 
/* 

PROJECT: JDM (Java Dynamic Machine) 
PROGRAMMER: PRIVATE LICENSE 
FILE:  vc-json/vc-json.js 
PURPOSE: GO! SERIALIZER & DE-SERIALIZER... 

Includes functions for: 

-- JSON/GO! Serialization 
-- JSON/GO! DE-Serialization 
-- JSON/GO! Parsing 

*/ 

var JSON = { 


version : "0.000a", 
org: 'http://www.JSON.org', 
copyright: '(c)2005 JSON.org', 
license: 'http://www.crockford.com/JSON/license.html'