Как получить общую ссылку в фиде Facebook? python, php Facebook API [дубликат]

Чтобы сохранить мой личный английский узел, я написал скрипт утилиты, который помогает заменить несколько папок старой / новой строки для всех файлов в каталоге рекурсивно.

Несколько паре старой / новой строки управляются в хэш-карте.

Директору можно установить через командную строку или переменную окружения, карта жестко закодирована в скрипте, но вы можете изменить код для загрузки из файла, если это необходимо.

Это требует bash 4.2 из-за некоторой новой функции.

en_standardize.sh:

#! /bin/bash
# (need bash 4.2+,)
# 
# Standardize phonetic symbol of English.
# 
# format:
#   en_standardize.sh [<dir>]
# 
# params:
# * dir
#   target dir, optional,
#   if not specified then use environment variable "$node_dir_en",
#   if both not provided, then will not execute,
# * 
# 

paramCount=$#

# figure target dir,
if [ $paramCount -ge 1 ]; then # dir specified
    echo -e "dir specified (in command):\n\t$1\n"
    targetDir=$1
elif [[ -v node_dir_en ]]; then # environable set,
    echo -e "dir specified (in environment vairable):\n\t$node_dir_en\n"
    targetDir=$node_dir_en
else # environable not set,
    echo "dir not specified, won't execute"
    exit
fi

# check whether dir exists,
if [ -d $targetDir ]; then
    cd $targetDir
else
    echo -e "invalid dir location:\n\t$targetDir\n"
    exit
fi

# initial map,
declare -A itemMap
itemMap=( ["ɪ"]="i" ["ː"]=":" ["ɜ"]="ə" ["ɒ"]="ɔ" ["ʊ"]="u" ["ɛ"]="e")

# print item maps,
echo 'maps:'
for key in "${!itemMap[@]}"; do
    echo -e "\t$key\t->\t${itemMap[$key]}"
done
echo -e '\n'

# do replace,
for key in "${!itemMap[@]}"; do
    grep -rli "$key" * | xargs -i@ sed -i "s/$key/${itemMap[$key]}/g" @
done

echo -e "\nDone."
exit
28
задан Igy 13 October 2015 в 05:10
поделиться

2 ответа

Вам нужно вручную указать каждое поле, поскольку Graph API v2.4:

Декларативные поля Чтобы повысить производительность в мобильных сетях, Nodes и Edges в версии 2.4 требуют, чтобы вы явно запрашивали поля, которые вам нужны для ваших запросов GET. Например, GET /v2.4/me/feed больше не включает в себя предпочтения и комментарии по умолчанию, но GET /v2.4/me/feed?fields=comments-likes вернет данные. Для получения дополнительной информации см. Документы о том, как запрашивать определенные поля.

Например:

FB.api('/me', 'get', { access_token: token, fields: 'id,name,gender' }, function(response) {
    console.log(response);
});
53
ответ дан Stephen Oberauer 22 August 2018 в 23:22
поделиться
  • 1
    Вы можете отредактировать ответ, чтобы активировать уведомление о таких проблемах, как developers.facebook.com/settings/developer/contact – Thellimist 16 September 2015 в 16:00
  • 2
    Ну, facebook не обновлял логин-пример на сайте разработчика и тратил меня на несколько дней. :) – Dave 16 January 2017 в 23:00
  • 3
    как отправить многоуровневые поля, например, в feed api, я хочу из области действия и из я хочу, чтобы изображение пользователя должно было появиться? – suresh pareek 27 April 2017 в 08:02
  • 4
    Приняли несколько дней, чтобы понять, что один из них. Я унаследовал устаревший код, используя Graph API v2.1, который внезапно сломался, когда FB остановил его поддержку 10 июля 2017 года. Не удалось найти, что нужно обновить, используя Инструмент обновления API, потому что они удалили из него v2.3 и ниже. – Georges Brisset 25 July 2017 в 13:32
  • 5
    Как я могу получить объект фотоальбома с помощью новой явной версии из URL-адреса, подобного этому: graph.facebook.com {album_id} / photos? Access_token = {app_id} | {app_secret} – Kirk Ross 31 July 2017 в 16:26

Также можно использовать этот синтаксис для данных из области public_profile (проверен в Graph API v2.9):

FB.api('/me?fields=birthday,link,gender,age_range', function(response) {
   console.log(response);
});

Вы можете проверить возможные значения онлайн в Graph API Explorer, просто нажмите кнопку «Получить токен»:

https://developers.facebook.com/tools/explorer/?method=GET&path=me%3Ffields%3Dbirthday%2Clink%2Cgender%2Cage_range& ; версия = v2.9

2
ответ дан NXT 22 August 2018 в 23:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: