2011-09-26 59 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'