Luffy1
@Luffy1
Student, Junior .NET programmer, C#, JS, HTML/CSS

Instagram API. Как и какой запрос мне нужно сделать, чтобы usernames из постов с помощью их айдишек?

У меня есть два токена доступа:
1. Из Instagram Graph API: var fs_access_token, который я получаю после входа в систему через Facebook;
2. Из Instagram Basic Display: var inst_access_token;
Итак, у меня есть коллекция айдишек постов, которые я получаю через ig_hashtag_search:
var posts_ids; //!= null;
У меня также есть 3 поста в моем бизнес-аккаунте в Instagram. И я пытаюсь получить usernames всех этих постов, которые есть в моей коллекции, с помощью одной конечной точки:
for (var u = 0; u < posts_ids.length; u++) {
  fetch("https://graph.instagram.com/" + posts_ids[u] + "?fields=username&access_token=" + inst_access_token).then(function (response) {
  response.text().then(function (text) {
      alert(text); //using Instagram Basic Display
    });
  });
}

Но потом я получаю сообщение об ошибке от этого запроса:
{
   "error": {
      "message": "Unsupported get request. Object with ID '17884048231750634' does not exist, cannot be loaded due to missing permissions, or does not support this operation",
      "type": "IGApiException",
      "code": 100,
      "error_subcode": 33,
      "fbtrace_id": "AKiycowo9LbwZbKzxOL-EQ9"
   }
}

Интересный факт: если я вставлю айди одного из постов, которые есть в моем бизнес-аккаунте в Instagram, вместо posts_ids [u], то он БУДЕТ работать! ТАК, что, черт возьми, здесь происходит? Это означает, что я могу получить «данные имени пользователя» только из постов, которые у меня есть в учетной записи Instagram, не так ли? Или что?
Я также пытался получить имена пользователей с другой конечной точки, где, конечно, я использовал другой access_token, который я получаю после входа в Facebook (access_token, который я использовал выше, был access_token, который я получаю после входа в Instagram; Instagram Graph API - access_token, который я получаю после входа в Facebook):
for (var u = 0; u < posts_ids.length; u++) {
   fetch("https://graph.facebook.com/v8.0/" + posts_ids[u] + "?fields=username&access_token=" + fs_access_token).then(function (response) {
      response.text().then(function (text) {
         alert(text);
      });
   });
}

Но потом я снова получаю ошибку от запроса:
{
   "error": {
      "message": "Unsupported get request. Object with ID '17884048231750634' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
      "type": "GraphMethodException",
      "code": 100,
      "error_subcode": 33,
      "fbtrace_id": "AhN5o9eopccP4NrQsu8QuaN"
   }
}

И снова интересный факт: если я вставлю id одного из постов, которые есть в моем бизнес-аккаунте в Instagram, вместо posts_ids [u], то он БУДЕТ работать! Я пробовал также такие варианты пробовал:
for (var u = 0; u < posts_ids.length; u++) {
    fetch("https://graph.facebook.com/v8.0/" + posts_ids[u] + "?fields=username&access_token=" + inst_access_token).then(function (response) {
        response.text().then(function (text) {
           alert(text);
        });
    });
}

И
for (var u = 0; u < posts_ids.length; u++) {
    fetch("https://graph.instagram.com/" + posts_ids[u] + "?fields=username&access_token=" + fs_access_token).then(function (response) {
         response.text().then(function (text) {
             alert(text);
         });
    });
}

Но потом я получаю такую ошибку:
{
   "error": {
      "message": "Invalid OAuth access token.",
      "type": "OAuthException",
      "code": 190,
      "fbtrace_id": "ARVMttFmcIAfwBTPdYcMEfQ"
   }
}

Скорее всего, это потому, что я пытаюсь совместить токен доступа из Instagram с технологией для работы с Facebook и токен доступа, полученный от Facebook, с технологией для работы с Instagram. Итак, не могли бы вы помочь мне найти конечную точку в Instagram Basic или Instagram Graph, которая позволяет получать usernames из постов ДРУГИХ пользователей (лучше всего через айдишки, которые я получаю с помощью Hashtag Search / Recent_media)? Или не могли бы вы помочь мне понять, как это правильно использовать? Потому что я новичок и могу не знать некоторых деталей. Пожалуйста, помогите мне получить usernames постов через их айдишки.
  • Вопрос задан
  • 480 просмотров
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
Открой сайт инсты и посмотри запросы просто
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы