2012-07-13 66 views
0

我正在尝试在用户的墙上发布内容。但是我不断收到这个错误。通过ActionScript发布到Facebook Wall

TypeError: Error #1006: value is not a function.
at com.facebook.graph.core::AbstractFacebook/handleRequestLoad()
at com.facebook.graph.net::AbstractFacebookRequest/dispatchComplete()
at com.facebook.graph.net::AbstractFacebookRequest/handleDataLoad()
at com.facebook.graph.net::AbstractFacebookRequest/handleURLLoaderComplete()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

下面是代码:

public function PostToUserWall(userId:String, message:String, name:String, caption:String, description:String, link:String):void 
    { 
     var params: Object = new Object; 
     params.message = message; 
     params.name = name; 
     params.caption = caption; 
     params.description = description; 
     params.link = link; 
     params.picture = "www.something.com/something.png"; 
     Facebook.api("/"+userId+"/feed", null, params, "POST"); 
    } 

我想明白这个问题是什么。但不知何故无法解决。这里有帮助吗?

回答

1

这是一个挑战,只有堆栈跟踪进行调试是一个挑战。发布代码可以提高某人能够帮助你的可能性。不过,它在我看来像回调parameter您的Facebook API调用不是一个函数。我建议你仔细检查你在API调用中传递的参数。

编辑:

调用facebook的API的第二个参数应该是被返回的结果当API将执行的功能。尝试更新的代码如下:

public function PostToUserWall(userId:String, message:String, name:String, caption:String, description:String, link:String):void 
{ 
     var params: Object = new Object; 
     params.message = message; 
     params.name = name; 
     params.caption = caption; 
     params.description = description; 
     params.link = link; 
     params.picture = "www.something.com/something.png"; 
     Facebook.api("/"+userId+"/feed", resultHandler, params, "POST"); 
} 

private function resultHandler():void 
{ 
    trace("Result!"); 
} 
+0

孰料net.uk.sweet!刚刚做到了这一点,问题不再存在:) – 2012-07-14 15:36:13

0

这里有两种方法,应该工作:

这一个帖子从SWF文件中的位图。

public function postImageToUserWall(bmp:Bitmap, caption:String):void 
{ 
    Facebook.api(_userID +'/photos', onPicPostedToUserWall, {message:caption, image:bmp, fileName:'file.png'}, URLRequestMethod.POST); 
} 

private function onPicPostedToUserWall(result:Object, fail:Object):void 
{ 
    if (result) 
    { 
     //result.id is id of photo that was just posted - used to link to pic when posting to recipient's wall 
    } 
    else if (fail) 
    { 
     // 
    } 
} 

这一个文章的链接图片:

public function postLinkToFeed(params:Object) 
{ 
    Facebook.ui('feed', { 
          name: params.name, 
          caption: params.caption, 
          description: params.description, 
          picture: params.imageURL, 
          link: params.link, 
          to: params.toID, 
          from: params.fromID 
         }, onPostToFeedComplete, 'iframe'); 
    } 

private function onPostToFeedComplete(result:Object) 
{ 
    // 
} 
+0

感谢您的回答肋骨:) – 2012-07-14 15:37:18