Извлечение поля «значение» из узла аналитики с помощью Facebook Graph API - PullRequest
0 голосов
/ 06 апреля 2020

Я использую этот запрос для получения общего количества показов и уникальных платных показов.

me?fields=posts.limit(1){insights.metric(post_impressions_unique,post_impressions_paid_unique)}

Однако я хочу получить только поле «значение», чтобы избавиться от всех ненужных узлов. Я использовал:

    me?fields=posts.limit(1) 
   {insights.metric(post_impressions_unique.value,post_impressions_paid_unique.value)}

, и я получаю следующую ошибку.

     "(#100) The value must be a valid insights metric".

Я также пробовал следующее:

  me?fields=posts.limit(1){insights.metric(post_impressions_unique.as.(unique_impressions),post_impressions_paid_unique.as(unique_paid_impressions))}

, который тоже не работает. Любая помощь будет высоко ценится.

1 Ответ

1 голос
/ 07 апреля 2020

Вы можете уменьшить его до структуры values, но не ниже, чтобы было возвращено только свойство value внутри. (И id всегда будет включено, несмотря ни на что.)

me?fields=posts.limit(1){insights.metric(post_impressions_unique,
          post_impressions_paid_unique).fields(values)}
                                       ^^^^^^^^^^^^^^^

Хотя не вижу особого смысла в этом. Вы потеряете соединение, значение которого было для которого метри c для начала, и если порядок их возврата по какой-либо причине будет изменен, у вас возникнет проблема.

И исправим это снова, используя синтаксис Field Aliasing, .as(…) - возможно, возможно, но тогда вы бы хотели увеличить длину отправляемого запроса в обмен на этот более короткий ответ ... Я думаю, вы скорее пытаетесь «Оптимизировать» в месте, где это не оправдано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...