API API Instagram Basic позволяет пользователям вашего приложения получать базовую информацию о профиле, фотографии и видео в их учетных записях Instagram.
API может быть использован для доступа к любому типу учетной записи Instagram, но предоставляет только доступ к основным данным. Если вы создаете приложение, которое позволит создавать Instagram предприятий или создателей для публикации средств массовой информации, умеренные комментарии, идентифицировать @mentioned и Hashtagged Media или получать данные о других пользователях Instagram, вместо этого используйте API Instagram Graph.
# Регистрация в Instagram Basic Display API и получите токен доступа
– Шаг 1: создать приложение Facebook
Перейти к developers.facebook.com нажмите Мои приложения и создайте новое приложение. Как только вы создали приложение и находятся в Приложение Dashboard Перейдите к Настройки > Базовый Прокрутите нижнюю часть страницы и нажмите Добавить платформу Отказ
Выберите Сайт Добавьте URL-адрес вашего сайта и сохраните изменения. Вы можете изменить платформу позже, если вы хотите, но для этого учебника используйте Сайт Отказ
Пожалуйста, введите адрес вашего сайта ниже в качестве примера
Перейдите к Роли > Роли и прокрутите вниз до Тестеры Instagram раздел. Нажмите Добавить тестеры Instagram и введите имя пользователя вашей учетной записи Instagram и отправьте приглашение.
Откройте новый веб-браузер и перейдите в www.instagram.com и войдите в свой аккаунт в Instagram, который вы только что пригласили. Перейдите к (значок профиля)> Редактировать профиль> Приложения и веб-сайты> Тестер приглашает и принять приглашение.
Ваша учетная запись Instagram теперь имеет право доступ к вашему приложению Facebook.
– Шаг 4: аутентифицировать тестовый пользователь
Доступ к генератору токена в Приложение Dashboard> Продукты> Instagram> Базовый дисплей вкладка.
Нажмите на Генерировать токен Кнопка для пользователя Instagram Tester вашего приложения. Пожалуйста, обратите внимание, что токены могут быть получены только для публичных учетных записей Instagram.
Аутентификация Если запрошено, следуйте инструкциям, примите разрешения и скопируйте токен доступа, который он появляется.
Ваша учетная запись Instagram теперь имеет право доступ к вашему приложению Facebook.
Создайте URL URL-адрес окна авторизации ниже, замена {app-id} С удостоверением ID приложения Instagram (из Mailboard | Products> Products> Instagram> Базовый дисплей> Instagram ID приложения поле) и {Redirect-uri} с URL-адресом вашего сайта, который вы предоставили на шаге 2 («Действительный oouth Redirect URI»). URL должен быть точно такой же.
Откройте новое окно браузера и загрузите URL-адрес окна авторизации. Он должен отображаться и отображать имя пользователя Instagram, имя приложения и описание разрешений вашего приложения запрашивается.
Аутентифицировать свой тестовый пользователь Instagram, вписав в окно авторизации, затем нажмите Авторизуйтесь Чтобы предоставить вашему приложению доступ к данным профиля. После успеха страница перенаправляет вас на URI Redirect URI, которое вы включены в предыдущий шаг, и добавьте код авторизации.
Обратите внимание, что #_ был добавлен к концу Redirect URI, но это не является частью самого кода. Скопируйте код (без #_ часть), чтобы вы могли использовать его на следующем шаге.
AQC-WbZmY....GbkbKVfzWPH3k0_p-HDkdyTvnpw
Используйте API базового дисплея Instagram с JavaScript
FC Instagram: основной файл (fcinstagram.js)
/*!
* FC Instagram - Development FCV Team
* Website: https://eplus.dev
* Since: 2019-11
* Version: v2.0.0
* Github: https://gitlab.com/fc-share/template-instagram
* Document Instagram Basic Display API: https://developers.facebook.com/docs/instagram-basic-display-api
*/
var FCInstagram = window.FCInstagram || {};
FCInstagram.name = "FC Instagram";
FCInstagram.version = "2.0.0";
// Info
console.info(
"%c " + FCInstagram.name + " %c v" + FCInstagram.version + " %c",
"margin-left: 5px; padding: 1px; color: #FEFEFE; font-size: 12px; line-height: 15px; background: #F79433; border-radius: 3px 0 0 3px;",
"padding: 1px; color: #FEFEFE; font-size: 12px; line-height: 15px; background: #FF5722; border-radius: 0 3px 3px 0;",
"background: transparent;"
);
// Utility for older browsers
if (typeof Object.create !== "function") {
Object.create = function (obj) {
function F() {}
F.prototype = obj;
return new F();
};
}
(function ($, window, document, undefined) {
var Instagram = {
API_URL: "https://graph.instagram.com/me/media?fields=",
API_FIELDS: "caption,media_url,media_type,permalink,timestamp,username",
/**
* Initializes the plugin.
* @param {object} options
* @param {jQuery Object} elem
*/
initialize: function (options, elem) {
this.elem = elem;
this.$elem = $(elem);
(this.accessToken = $.fn.FCInstagram.accessData.accessToken),
(this.options = $.extend({}, $.fn.FCInstagram.options, options));
this.messages = {
defaultImageAltText: "Instagram Photo",
notFound: "This user account is private or doesn't have any photos.",
};
this.getPhotos();
},
/**
* Calls the fetch function and work with the response.
*/
getPhotos: function () {
var self = this;
// messages = null;
self.fetch().done(function (results) {
if (results.data) {
self.displayPhotos(results);
} else if (results.error.message) {
$.error("FCInstagram.js - Error: " + results.error.message);
} else {
$.error("FCInstagram.js - Error: user does not have photos.");
}
});
},
/**
* Makes the ajax call and returns the result.
*/
fetch: function () {
var getUrl =
this.API_URL + this.API_FIELDS + "&access_token=" + this.accessToken;
return $.ajax({
type: "GET",
dataType: "jsonp",
cache: false,
url: getUrl,
});
},
/**
* Appends the markup to the DOM with the images.
* @param {object} results
*/
displayPhotos: function (results) {
var $element,
$video,
hasCaption,
imageGroup = [],
imageCaption,
autoplay,
max;
max =
this.options.max >= results.data.length
? results.data.length
: this.options.max;
if (results.data === undefined || results.data.length === 0) {
this.$elem.append(this.messages.notFound);
return;
}
for (var i = 0; i < max; i++) {
if (
results.data[i].media_type === "IMAGE" ||
results.data[i].media_type === "CAROUSEL_ALBUM"
) {
hasCaption =
results.data[i].caption !== null ||
results.data[i].caption !== undefined;
imageCaption = hasCaption
? $("").text(results.data[i].caption).html()
: this.messages.defaultImageAltText;
$element = $("", {
href: results.data[i].permalink,
target: "_blank",
title: imageCaption,
style:
"background:url(" +
results.data[i].media_url +
") no-repeat center / cover;",
rel: "nofollow",
});
// Add item
imageGroup.push($element);
} else if (results.data[i].media_type === "VIDEO") {
autoplay =
this.options.autoplay == true
? "autoplay muted loop playsinline"
: "";
$source = $("", {
src: results.data[i].media_url,
type: "video/mp4",
});
$video = $("
Js.
CSS.
/* *
* FC Instagram - Development FCV Team
* Website: https://eplus.dev
* Since: 2019-11
* Version: v2.0.0
* */
/* BEGIN - MEDIUM */
.instagram-gallery-medium {
width: 480px;
cursor: pointer;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-wrap: wrap;
}
.instagram-gallery-medium > a {
width: 150px;
height: 150px;
position: relative;
overflow: hidden;
margin: 5px;
}
.instagram-gallery-medium > a > video{
width: 100%;
height: 100%;
object-fit: cover;
}
/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575px) {
.instagram-gallery-medium {
width: 320px;
}
.instagram-gallery-medium > a {
width: 100px;
height: 100px;
margin: 2px;
}
}
/* END - MEDIUM */
HTML
accesstoken.
Нить
нулевой
да
Это ваше приложение Instagram Accessoked.
Максимум
Число
9
Нет
Число от 1 до 25 фотографий для поставки.
Автовоспроизведение
Логический
ложный
Нет
Видео автозагрузка на / С настройкой True / false.
полный
Функция
нулевой
Нет
Функция обратного вызова для выполнения после отображения фотографий.