Я настраиваю приложение facebook - с API AS3 facebook. Первое, что я делаю, это вызываю Facebook.init(). Когда это делается в нашей обычной настройке разработки (обычный http-сайт) - это работает отлично, и я могу получить доступ к графику. Однако, когда я переключаюсь на https-сайт (с самозаверяющим сертификатом), Facebook.init() никогда не запускает обратный вызов. Я правильно настроил crossdomain.xml, чтобы разрешить все, а безопасность не соответствует действительности. Кто-нибудь знает, как я могу настроить это так, чтобы оно работало.
Как я могу получить AS3 facebook API для инициализации на самоподписанном https-сайте
comment
Я советую использовать ExternalInterface для вызова API Facebook. Вам просто нужен простой скрипт шлюза на JS, который будет вызывать, получать и отправлять ответы из FB в swf. Преимущество этого решения заключается в том, что JS не имеет таких ограничений безопасности, как AS3, и у вас есть лучшая поддержка кэширования из браузера.
- person Konrad   schedule 22.04.2013
Ответы (2)
Действительно, соединение Facebook с FB API AS3 больше не работает с августа...
Facebook.init(APP_ID, onInit);
protected function onInit(result:Object, fail:Object):void {
trace("on INIT");
if (result) { //already logged in because of existing session
outputTxt.text = "onInit, Logged In\n";
loginToggleBtn.label = "Log Out";
} else {
outputTxt.text = "onInit, Not Logged In\n";
}
}
Нет сообщения "on INIT"...
Кто-нибудь ?
person
Benoît Freslon
schedule
27.08.2012
В as3 не используйте «if (результат)», если вы хотите протестировать объект. Любое изменение в API (например, изменение Object с Boolean на {status: true, code: 200}) сделает ваш код бесполезным, и вы даже не заметите этого.
- person Konrad; 22.04.2013
Получить accessToken из FB.init в JS
Передать accessToken во Flash (параметры swf или ExternalInterface)
Вызовите Facebook.init() с accessToken и установите options.status = true
var options:Object = {};
var accessToken:String = null;
if(!StringValidator._isNullOrEmpty(m_swfParameters._accessToken))
{
options.status = true;
accessToken = m_swfParameters._accessToken;
}
Facebook.init(m_facebookProvider._appId, _onInitedCallback, options, accessToken);
if(options.status === true)
{
_onInitedCallback(options, null);
}
person
mizi_sk
schedule
22.04.2013