2011-03-03 156 views
1

我從iPhone應用程序發佈到Facebook牆。當我只是發送消息時,它運行良好,但是當我嘗試添加鏈接時,該消息不會發布在Facebook上。從iPhone應用程序發佈到Facebook牆的鏈接

代碼:

NSString *link = @"http://www.foo.com"; 
NSString *linkName = @"Bar"; 
NSString *linkCaption = @"Foo Bar"; 
NSString *linkDescription = @"Fooooooo Bar"; 
NSString *message = @"Message"; 

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
            kAppId, @"api_key", 
            message, @"message", 
            linkName, @"name", 
            linkDescription, @"description", 
            link, @"link", 
            linkCaption, @"caption", 
            nil]; 

[_facebook requestWithGraphPath: @"me/feed" 
         andParams: params 
        andHttpMethod: @"POST" 
        andDelegate: self]; 

這是當我添加了鏈接和標題給PARAMS字典,Facebook不會張貼在牆上。我甚至沒有在(void) request: (FBRequest *) request didFailWithError: (NSError *) error中發生錯誤,所以看起來Facebook認爲請求沒問題。

回答

0

我只是張貼在FB中的鏈接與使用附件...

NSDictionary* attachment = [NSDictionary dictionaryWithObjectsAndKeys: 
          @"Visit My Site", @"name", 
          @"http://www.mysite.com", @"href", nil]; 
NSString *attachmentStr = [jsonWriter stringWithObject:attachment]; 
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Your Message",@"message", 
            attachmentStr,@"attachment",nil]; 
+0

我已經看到這個方法用了很多,並嘗試過,結果和我在第一篇文章中一樣。此外,我無法在新Facebook API的文檔中找到對「附件」的任何引用:http://developers.facebook。com/docs/reference/api/post/ – KIS 2011-03-03 14:22:03

1

你可能想看看ShareKit。它是一個維護良好的開源庫,用於連接各種社交網絡服務,並保持API與ShareKit社區的兼容性。

0

爲了顯示FB上的鏈接,你可以使用actionLinks。

delgates作爲

dialog.actionLinks = @"[{\"text\":\"See My App here!\",\"href\":\"http://www.facebook.com/developers/apps.php?app_id=178257532217623&ret=2/\"}]"; 

這將顯示在烏拉圭回合後的右側鏈接

0

我不知道你的問題是什麼,因爲一切都看起來不錯,但是這可能會幫助您解決: http://developers.facebook.com/docs/reference/rest/stream.publish/

嘗試通過表單頁面上發佈你的信息,看看Facebook的告訴你。如果出現問題,您會看到一條錯誤消息。如果您正在使用FBConnect然後用這個方法每一件事情是在後牆上FB

{ "href": "http://www.fantasy-fan.org", "name": "test", "caption": "test2", "description": "test3", "media": [{ "type": "image", "src": "http://dragontest.fantasy-fan.org/images/dwarf.jpg", "href": "http://www.fantasy-fan.org" }]} 
0

要發佈你需要使用此語法添加附件中的鏈接。

- (void)postToWall 
{ 

    FBStreamDialog *dialog = [[[FBStreamDialog alloc] init] autorelease]; 
    dialog.userMessagePrompt = @"Enter your message:"; 
    dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"Facebook Connect for iPhone\",\"href\":\"http://developers.facebook.com/connect.php?tab=iphone\",\"caption\":\"Caption\",\"description\":\"Description\",\"media\":[{\"type\":\"image\",\"src\":\"http://img40.yfrog.com/img40/5914/iphoneconnectbtn.jpg\",\"href\":\"http://developers.facebook.com/connect.php?tab=iphone/\"}],\"properties\":{\"another link\":{\"text\":\"Facebook home page\",\"href\":\"http://www.facebook.com\"}}}"]; 
    [dialog show]; 

} 
0

使用這個。這個對我來說工作得很好。

NSString *graphPath = @"me/feed"; 

    NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
               self.link,@"link", 
               self.url,@"picture", 
               self.message,@"name", 
               @"Write_Captioon",@"caption", 
               self.description,@"description", 
               /*@"Facebook Dialogs are so easy!",@"message",*/ 
               nil]; 

     [[FBRequestWrapper defaultManager] sendFBRequestWithGraphPath:graphPath params:params andDelegate:self]; 

檢查您的網址也可能是網址不正確form.I的沒有面臨這種問題了Facebook,但如果LinkedIn的時候我的網址有「=」,後沒有被分享,但與其他網站成功共享。希望這會幫助你。

+0

參數的字符限制是什麼? – user3306145 2016-08-10 12:48:13

相關問題