我在这里遇到了 1 个问题,我使用我的应用 ID 在我的服务器上上传了“在 Flash AS3 中使用 Facebook Graph API 发布到相册”示例,但是当我尝试登录时,它无法登录并且不显示我的名字,请帮助我做…?
这是示例 URL http://www.permadi.com/tutorial/as3-save-photo-to-facebook-album/?test
并且示例 URL 工作正常:(
我在这里遇到了 1 个问题,我使用我的应用 ID 在我的服务器上上传了“在 Flash AS3 中使用 Facebook Graph API 发布到相册”示例,但是当我尝试登录时,它无法登录并且不显示我的名字,请帮助我做…?
这是示例 URL http://www.permadi.com/tutorial/as3-save-photo-to-facebook-album/?test
并且示例 URL 工作正常:(
给定的链接还告诉您为什么该示例不起作用,因为它是使用 API 1.5 编译的,并且 Facebook API 已经更新和更改。
我的建议是下载最新版本 1.8.1 并按照上面链接中的说明进行操作。
从升级到 1.8.1 必须遵循的一些更改
将 response.session 更改为 response.authResponse。将 .js 中的 getSession 更改为 getAuthResponse。perms 现在称为范围。
“重定向”现在没用了,所以只需从 loginHandle 中删除
function handleLogin(response:Object, fail:Object):void {
if (response == null) {
//resultTxt.text += 'Error login session';
ExternalInterface.call('redirect'); // useless <-- remove it
return;
}
changeToLoginState();
}
我看到许多人询问 loginHandler 在身份验证完成时不会调用的另一件重要的事情。几乎原因是您的 SWF 对象具有热给定的 id 或名称。请记住通过 SWFObject 库提供名称和 ID。请参阅下面的示例,重点关注粗体文本。
var flashvars = {};
var params = {allowScriptAccess: "always",wmode: "transparent"};
**var attributes = {id:"main",name:"main" };**
swfobject.embedSWF("main.swf","flashContent", "810", "525", "11.0.0", "expressInstall.swf",flashvars, params, attributes);
您的问题不是很清楚,这可能是它被否决的原因。
facebook API 是一个不断变化的目标,许多与 Facebook 集成的旧 Flash 框架使用旧的已弃用 API。
我发现这个框架非常干净和清晰,并且可以与 Facebook 更新的 API 一起使用 - https://github.com/Dareville/Facebook-Graph
祝你好运