1

我正在尝试使用 js sdk 发布一个动作。

我的行动代码是

 function watchvid()
  {
      FB.api(
        '/me/video.watches?video=http://watchvideoz.in/watch.php?v=34',
        'post',
        function(response) {
           if (!response || response.error) {

              alert(JSON.stringify(response.error)); 
           } else {
var a = response.id;
    MyApp.color = a;

           }
        });
  }

我的元标签是

<meta property="og:url" content="http://watchvideoz.in/watch.php?v=34"/>    
<meta property="fb:app_id" content="288976161189701"/>  
<meta property="og:title" content="Buckys C++ Programming Tutorials - 9 - Functions"/> 
<meta property="og:type" content="video.other" />
<meta property="og:image" content="http://img.youtube.com/vi/bsWWHo4KDHE/hqdefault.jpg"/>   
<meta property="og:description" content="For all of our videos, visit http://thenewboston.com"/>
<meta property="og:site_name" content="YourVidz"/>

但我收到以下错误

{"message":"(#3502) Object at URL http://watchvideoz.in/watch.php?v has og:type of 'website'. The property 'video' requires an object of og:type 'video.other'. ","type":"OAuthException","code":3502}

在上面的错误中,它忽略了=之后的值,即 它只检索http://watchvideoz.in/watch.php?v

尽管 fb 调试器工具正在检索正确的值

http://watchvideoz.in/watch.php?v=34

4

1 回答 1

0

如果您将 url 作为查询字符串参数传递,则需要对其进行“url 编码”,以便 '?' 并且您自己的查询字符串中的 '&' 不会与“父”网址中的那个混淆。试试http://watchvideoz.in/watch.phpp%3Fv%3D34

于 2012-05-08T18:59:17.933 回答