2012-06-18 79 views
0

當我嘗試向Facebook發佈操作時,我收到了異常。發佈到Facebook的行爲有例外

Exception : 
{"error":{"message":"(#3502) Object at URL localhost/XXX has og:type of 'website'. The property 'myobject' requires an object of og:type 'mynamespace:myobject'. ","type":"OAuthException","code":3502}} 


FB.api(
      '/me/mynamespace:myaction', 
      'post', 
      { myobject: url, 
       access_token: accessToken 
      }, 
      function (response) { 
       if (!response || response.error) { 
        Alert(JSON.stringify(response)); 
       } 
      }); 

我的網址從後端模型生成的: 我的網址:http://localhost/post/og/

public ActionResult og(int id) 
     { 
      return View(new OGModel(id)); 
     } 

查看:

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" 
     xmlns:fb="https://www.facebook.com/2008/fbml"> 
    <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# @Model.NameSpace: http://ogp.me/ns/fb/@Model.NameSpace#"> 
     <title>@Model.Title</title> 
     <meta property="fb:app_id" content="@Model.AppId" /> 
     <meta property="og:type" content="@Model.NameSpace:myobject" /> 
     <meta property="og:url" content="@Model.SharingLink"> 
     <meta property="og:title" content="@Model.Title" /> 
     <meta property="og:image" content="@Model.Image" /> 
    </head> 
    <body> 
     <div> 

     </div> 
    </body> 
</html> 

任何想法?

+0

檢測什麼,你看你的生成頁面的源代碼,看看你的觀點是輸出你的期望? – cpilko

+0

是cpilko,它就是我所期望的。 – gandil

回答

3

由於Facebook的抓取工具無法訪問它們並閱讀元標記,因此無法發佈對象URL位於本地主機上的OG操作。 所有對象的URL都需要通過互聯網訪問;特別是Facebook的抓取工具。

您可以檢查如果有任何的Facebook上您的網址使用Facebook's Debug Tool