2

我对编程完全陌生,只是设法学习了 ActionScript 3 的基础知识。现在,我想学习如何使用 UI 类(取自一个不错的教程)通过 as3 SDK 在我的朋友的墙上发帖:

这就是我在自己的墙上发帖的方式:

protected function newsFeed ():void
        {
            
            // define your caption text
            var theCaption:String = "CaptionText";
            
            // define the descrition text
            var theDescription:String = "Text for game Achievement";
            
            // We need to follow the FB docs to tell it what sort of input we are sending to FB
            // We are trying to set the 'feed'
            var methodInput:String = 'feed';
            
            var thePicture:String = "mylink/picture.png";
            var theLink:String = "mylink";
            var theName:String = "Name of FB Status Setter";
            
            // Create an object that we'll call 'data' and fill it with the actual data we're sending to Facebook
            var data:Object = {
                caption:theCaption, 
                description:theDescription, 
                picture:thePicture, 
                name:theName, 
                link:theLink
            };
          Facebook.ui(methodInput, data, onUICallback);
         }

protected function onUICallback(result:Object):void
    {
    // do something
    }

这工作得很好。我知道我必须将参数“到”集成到某个地方。但我不知道在哪里以及如何。抱歉,我对此非常陌生。这是来自 Facebook 文档

特性

from:发布消息的用户的 ID 或用户名。如果未指定,则默认为当前用户。如果指定,它必须是用户的 ID 或用户管理的页面的 ID。

to:此故事将发布到的个人资料的 ID 或用户名。如果此 > 未指定,则默认为 from 的值。

希望有人可以帮助我。

最好的问候, Amir PS:有没有一种方法可以只发布一个朋友的墙,而另一种方法可以发布在几个朋友的墙上?

4

1 回答 1

4

我相信你想使用Facebook.api()而不是'ui'。根据 AS3 FB API 的文档,“ui”只是打开共享对话框。如果您想在朋友墙上创建帖子,那么您将需要使用“api”。

我没有在 Flash 中测试过这个,但我认为你可以将方法设置为/PROFILE_ID/feed......当然用朋友的 FB uid 替换“PROFILE_ID”。然后,包括论点;数据对象中的消息、图片、链接、名称、标题、描述来源

所以你的代码看起来像:

var method:String = "/friend_id/feed";
var data:Object = {};

data.message = "Your message";
data.picture = "http://www.google.com/kittens.jpg";
data.link = "http://www.mysite.com/link";
data.caption = "Your caption";
data.description = "Your description";
data.source = "http://www.mysite.com/video.swf";//(optional) source is a video or Flash SWF

Facebook.api(method, yourCallback, data, "POST");

function yourCallback(result:Object, fail:Object):void {
    if (result) {
        trace(result)
    } else if (fail) {
        trace(fail);
    }
}

如果您有多个朋友,您可能只需将 uid 放入一个数组并循环执行上述方法。AS3 API 有一个我没有尝试过的批处理请求方法,但是您可以查看文档

Facebook 有一些非常有用的工具,但有些隐藏。
查看他们的Debugger和他们的Graph API Explorer

希望这会有所帮助。

于 2012-02-29T17:00:30.983 回答