Проблема с диалоговым окном запроса FB.ui

Я пытаюсь отправить приглашения приложений из приложения Iframe. Я открываю диалог так.

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

Когда открывается диалоговое окно, я получаю массу сообщений об ошибках «Небезопасная попытка JavaScript получить доступ к фрейму с URL-адресом из фрейма с URL-адресом». Кнопки отправки и отмены просто делают диалог пустым, но не закрываются, и он не работает.

Я не знаю, связано это или нет, но при загрузке JS SDK в Chrome я получаю «Невозможно прочитать свойство« cb »неопределенного», а Firefox говорит «b не определено». У меня больше нет ссылок на старый FeatureLoader.js.


person Tyler Wilson    schedule 26.09.2011    source источник


Ответы (2)


Это код, который я использую для отправки запроса, и у меня никогда не было проблем ни с Chrome, ни с Firefox ...: s

Недавно они опубликовали больше примеров здесь: 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/');

                       }
                }            
         ); 
}
person Nicolas Grenié    schedule 26.09.2011
comment
Спасибо, но я попробовал отображение iframe, и это вообще не сработало. Вероятно, потому что я не использовал access_token. - person Tyler Wilson; 27.09.2011

Я нашел проблему. Был включен файл Javascript, который конфликтовал с Javascript Facebook. Я не совсем уверен, что именно конфликтует, но это была библиотека JSON 2005 года. К счастью, она не используется, поэтому я просто удалил ее. Это информация об авторских правах на файл.

// 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'
person Tyler Wilson    schedule 27.09.2011