API-интерфейс Twitter не может передавать результаты запроса друзей / идентификаторов пользователям / запросы поиска с помощью библиотеки abrahams twitter oauth

У меня проблемы с передачей результатов friends/ids запрос к users/lookup запрос при использовании Авраама в Twitter OAuth (https://twitteroauth.com/) PHP-библиотека для доступа к Twitter REST API.

После аутентификации я получаю список друзей аккаунта как идентификаторы пользователей:

$content = $connection->get("followers/ids", ["screen_name" => $input]);

Затем я создаю список через запятую:

foreach ($content as $user) {
$userlist = implode(', ', $user);

И затем я передаю это в запрос пользователей / поиска:

$output = $connection->post("users/lookup", ["user_id" => $userlist]);

Это дает ошибку кода 17, которая, как я понимаю, означает, что такая учетная запись не была обнаружена Twitter. Вывод взорванного $userlist показывает, что этот шаг работает нормально.

Если я определю $userlist я тогда последующий звонок users/lookup работает отлично. Например:

$userlist = "820310862045052930, 806614673474912256, 745020013837434880, 789205729123065860, 717272899741204480, 2523773164, 763810846929719296, 817061186705457152, 806495626670186496, 1935657786, 813858305282109442, 224295002, 24016369, 719472791200739328, 3292608016, 544394440, 338499233, 704776216, 1080910670, 2162932007, 15700673, 2212757984, 375238808, 2949937593, 244523746, 145021177, 4195801821, 799570638847561728"

Я попытался преобразовать результаты первого запроса (friends / ids) в массив:

 $contentarray = json_decode(json_encode($content), True);

но это не имеет значения. Я также попытался передать список идентификаторов в виде массива (и определить $ userlist как таковой в запросе). Упаковка $userlist в кавычках тоже не работает и не имеет значения, использую ли я GET или POST. Точно так же создание другого массива только user_ids (исключая курсоры) и создание списка, разделенного запятыми, не имеет значения.

Twitter OAuth обычно настолько прост и интуитивно понятен в использовании, но я потратил на это часы и никуда не деться. Может кто-нибудь помочь с тем, где я иду не так?

0

Решение

Вот и получается, проблема была с моим foreach петля. Шляпа совет hobbes3 за этот ответ.

После аутентификации:

// get the user's followers
$content = $connection->get("followers/ids", ["screen_name" => $input]);

// replace stdclass object with array
$content_as_array = json_decode(json_encode($content), True);

//create new array with foreach
$content_as_new_array = array();
foreach($content_as_array as $user) {
foreach($user as $newuser) {
array_push($content_as_new_array, $newuser);
}
}

// implode this new array
$userlist = implode(", ", $content_as_new_array);

// and pass this new array to API

$output = $connection->post("users/lookup", ["user_id" => $userlist]);
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector