Проблема с Facebook OG / Game - PullRequest
1 голос
/ 03 апреля 2012

У меня есть игра, когда пользователь «решает» «слово», он должен вызвать OG req.

Вот звонок:

curl -F 'access_token=abc' \
     -F 'tw=theword_solved_goes_here' \
     -F 'word=https://drawabble.com/og/word.php' \
     -F 'scrape=true' \
        'https://graph.facebook.com/me/drawabble:solve'

И URL объекта - https://drawabble.com/og/word.php?&tw=theword_solved_goes_here

и скрипт страницы выглядит так (word.php)

<?
    if( $_GET['fb_action_ids'] ){
        header("Location: http://drawabble.com");
    }
?>
<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# drawabble: http://ogp.me/ns/fb/drawabble#">
  <meta property="fb:app_id"          content="360199164024147" /> 
  <meta property="og:type"            content="drawabble:word" /> 
  <meta property="og:title"           content="<?=($_GET['tw'])? $_GET['tw'] : $_POST['tw']?>" /> 
  <meta property="og:url"               content="https://drawabble.com/og/word.php?tw=<?=($_GET['tw'])? $_GET['tw'] : $_POST['tw']?>" /> 
  <meta property="og:description"     content="Solved on http://drawabble.com" /> 
  <meta property="og:image"           content="https://drawabble.com/drawabble.png" /> 
  <meta property="drawabble:tw"   content="<?=($_GET['tw'])? $_GET['tw'] : $_POST['tw']?>" /> 
</html>

Ошибка: {"error": {"type": "Exception", "message": "Объект по URL-адресу" https://drawabble.com/og/word.php?tw=' типа 'drawabble: word' недопустим, поскольку обязательное свойство og: title ' типа 'строка' не предоставлено. "}}

Так что я предполагаю, что теги не перехватывают опубликованные или _get URL ... не могу понять, почему.

Любая помощь приветствуется!

1 Ответ

1 голос
/ 03 апреля 2012

В вашем вызове cURL указан URL-адрес https://drawabble.com/og/word.php

Теперь, если вы очистите это, заголовок og: будет пустой строкой, поскольку мы не передаем два параметра. Мы передаем переменную tw в Facebook, но она не передается вашему приложению в опубликованном вами коде.

Итак, попробуйте изменить вызов cURL на ...

curl -F 'access_token=abc' \
     -F 'word=https://drawabble.com/og/word.php?tw=theword_solved_goes_here' \
     -F 'scrape=true' \
        'https://graph.facebook.com/me/drawabble:solve'
...